aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/exit.c
diff options
context:
space:
mode:
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 ee515683b92d..caceabf3f230 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -72,7 +72,6 @@ repeat:
72 __ptrace_unlink(p); 72 __ptrace_unlink(p);
73 BUG_ON(!list_empty(&p->ptrace_list) || !list_empty(&p->ptrace_children)); 73 BUG_ON(!list_empty(&p->ptrace_list) || !list_empty(&p->ptrace_children));
74 __exit_signal(p); 74 __exit_signal(p);
75 __exit_sighand(p);
76 /* 75 /*
77 * Note that the fastpath in sys_times depends on __exit_signal having 76 * Note that the fastpath in sys_times depends on __exit_signal having
78 * updated the counters before a task is removed from the tasklist of 77 * updated the counters before a task is removed from the tasklist of
@@ -258,7 +257,7 @@ static inline void reparent_to_init(void)
258 257
259void __set_special_pids(pid_t session, pid_t pgrp) 258void __set_special_pids(pid_t session, pid_t pgrp)
260{ 259{
261 struct task_struct *curr = current; 260 struct task_struct *curr = current->group_leader;
262 261
263 if (curr->signal->session != session) { 262 if (curr->signal->session != session) {
264 detach_pid(curr, PIDTYPE_SID); 263 detach_pid(curr, PIDTYPE_SID);
@@ -926,7 +925,6 @@ do_group_exit(int exit_code)
926 /* Another thread got here before we took the lock. */ 925 /* Another thread got here before we took the lock. */
927 exit_code = sig->group_exit_code; 926 exit_code = sig->group_exit_code;
928 else { 927 else {
929 sig->flags = SIGNAL_GROUP_EXIT;
930 sig->group_exit_code = exit_code; 928 sig->group_exit_code = exit_code;
931 zap_other_threads(current); 929 zap_other_threads(current);
932 } 930 }