aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/fork.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/fork.c')
-rw-r--r--kernel/fork.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/fork.c b/kernel/fork.c
index 666dc8b06606..0f2bbce311fc 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -1039,8 +1039,6 @@ static int copy_signal(unsigned long clone_flags, struct task_struct *tsk)
1039 atomic_set(&sig->live, 1); 1039 atomic_set(&sig->live, 1);
1040 atomic_set(&sig->sigcnt, 1); 1040 atomic_set(&sig->sigcnt, 1);
1041 init_waitqueue_head(&sig->wait_chldexit); 1041 init_waitqueue_head(&sig->wait_chldexit);
1042 if (clone_flags & CLONE_NEWPID)
1043 sig->flags |= SIGNAL_UNKILLABLE;
1044 sig->curr_target = tsk; 1042 sig->curr_target = tsk;
1045 init_sigpending(&sig->shared_pending); 1043 init_sigpending(&sig->shared_pending);
1046 INIT_LIST_HEAD(&sig->posix_timers); 1044 INIT_LIST_HEAD(&sig->posix_timers);
@@ -1441,8 +1439,10 @@ static struct task_struct *copy_process(unsigned long clone_flags,
1441 ptrace_init_task(p, (clone_flags & CLONE_PTRACE) || trace); 1439 ptrace_init_task(p, (clone_flags & CLONE_PTRACE) || trace);
1442 1440
1443 if (thread_group_leader(p)) { 1441 if (thread_group_leader(p)) {
1444 if (is_child_reaper(pid)) 1442 if (is_child_reaper(pid)) {
1445 ns_of_pid(pid)->child_reaper = p; 1443 ns_of_pid(pid)->child_reaper = p;
1444 p->signal->flags |= SIGNAL_UNKILLABLE;
1445 }
1446 1446
1447 p->signal->leader_pid = pid; 1447 p->signal->leader_pid = pid;
1448 p->signal->tty = tty_kref_get(current->signal->tty); 1448 p->signal->tty = tty_kref_get(current->signal->tty);