From: Oleg Nesterov Daemonized kernel threads run in the init's session. This doesn't match the behaviour of kthread_create()'ed threads, and this is one of the 2 reasons why we need a special hack in sys_setsid(). Now that set_special_pids() was changed to use struct pid, not pid_t, we can use init_struct_pid and set 0,0 special pids. Signed-off-by: Oleg Nesterov Acked-by: "Eric W. Biederman" Cc: Pavel Emelyanov Signed-off-by: Andrew Morton --- kernel/exit.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff -puN kernel/exit.c~move-daemonized-kernel-threads-into-the-swappers-session kernel/exit.c --- a/kernel/exit.c~move-daemonized-kernel-threads-into-the-swappers-session +++ a/kernel/exit.c @@ -390,7 +390,7 @@ void daemonize(const char *name, ...) get_nsproxy(&init_nsproxy); switch_task_namespaces(current, &init_nsproxy); } - set_special_pids(find_pid(1)); + set_special_pids(&init_struct_pid); proc_clear_tty(current); /* Block and flush all signals */ _