From: Oleg Nesterov Date: Thu, 10 Nov 2005 14:22:18 +0000 (+0300) Subject: [PATCH] Don't auto-reap traced children X-Git-Tag: v2.6.15-rc1~49 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7ed0175a462c4c30f6df6fac1cccac058f997739;p=linux-2.6 [PATCH] Don't auto-reap traced children If a task is being traced we never auto-reap it even if it might look like its parent doesn't care. The tracer obviously _does_ care. Signed-off-by: Linus Torvalds --- diff --git a/kernel/signal.c b/kernel/signal.c index 1bf3c39d61..80789a59b4 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -1499,7 +1499,7 @@ void do_notify_parent(struct task_struct *tsk, int sig) psig = tsk->parent->sighand; spin_lock_irqsave(&psig->siglock, flags); - if (sig == SIGCHLD && + if (!tsk->ptrace && sig == SIGCHLD && (psig->action[SIGCHLD-1].sa.sa_handler == SIG_IGN || (psig->action[SIGCHLD-1].sa.sa_flags & SA_NOCLDWAIT))) { /*