aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/exit.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-08-22 18:42:10 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2012-09-26 21:10:00 -0400
commit864bdb3b6cbd9911222543fef1cfe36f88183f44 (patch)
treebd00e6293592a084ee0fe68e3acb93060f54ae68 /kernel/exit.c
parentswitch spufs/coredump to iterate_fd() (diff)
downloadlinux-dev-864bdb3b6cbd9911222543fef1cfe36f88183f44.tar.xz
linux-dev-864bdb3b6cbd9911222543fef1cfe36f88183f44.zip
new helper: daemonize_descriptors()
descriptor-related parts of daemonize, done right. As the result we simplify the locking rules for ->files - we hold task_lock in *all* cases when we modify ->files. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'kernel/exit.c')
-rw-r--r--kernel/exit.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/kernel/exit.c b/kernel/exit.c
index 20dfc7617c2e..095113321318 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -457,9 +457,7 @@ void daemonize(const char *name, ...)
/* Become as one with the init task */
daemonize_fs_struct();
- exit_files(current);
- current->files = init_task.files;
- atomic_inc(&current->files->count);
+ daemonize_descriptors();
reparent_to_kthreadd();
}