aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorJustin TerAvest <teravest@google.com>2011-07-12 08:31:45 +0200
committerZiyan <jaraidaniel@gmail.com>2016-01-08 10:36:21 +0100
commita29733cdc5363ca662e5fdec4df2a9dae8c25849 (patch)
tree9afb57c9212ad03050140d6c61517e4ded47c1e3 /kernel
parent509f93403db854affb513debab37bf10f317426c (diff)
downloadkernel_samsung_tuna-a29733cdc5363ca662e5fdec4df2a9dae8c25849.tar.gz
kernel_samsung_tuna-a29733cdc5363ca662e5fdec4df2a9dae8c25849.tar.bz2
kernel_samsung_tuna-a29733cdc5363ca662e5fdec4df2a9dae8c25849.zip
fixlet: Remove fs_excl from struct task.
fs_excl is a poor man's priority inheritance for filesystems to hint to the block layer that an operation is important. It was never clearly specified, not widely adopted, and will not prevent starvation in many cases (like across cgroups). fs_excl was introduced with the time sliced CFQ IO scheduler, to indicate when a process held FS exclusive resources and thus needed a boost. It doesn't cover all file systems, and it was never fully complete. Lets kill it. Signed-off-by: Justin TerAvest <teravest@google.com> Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/exit.c1
-rw-r--r--kernel/fork.c1
2 files changed, 0 insertions, 2 deletions
diff --git a/kernel/exit.c b/kernel/exit.c
index bf686a8ec98..dfdcf18198a 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -904,7 +904,6 @@ NORET_TYPE void do_exit(long code)
profile_task_exit(tsk);
- WARN_ON(atomic_read(&tsk->fs_excl));
WARN_ON(blk_needs_flush_plug(tsk));
if (unlikely(in_interrupt()))
diff --git a/kernel/fork.c b/kernel/fork.c
index 4dd3bd1dc68..ab26d7da5cf 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -309,7 +309,6 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
/* One for us, one for whoever does the "release_task()" (usually parent) */
atomic_set(&tsk->usage,2);
- atomic_set(&tsk->fs_excl, 0);
#ifdef CONFIG_BLK_DEV_IO_TRACE
tsk->btrace_seq = 0;
#endif