Messages in this thread | | | Date | Tue, 1 Feb 2011 14:40:37 +0100 | From | Oleg Nesterov <> | Subject | Re: [PATCH] ptrace: use safer wake up on ptrace_detach() |
| |
On 02/01, Tejun Heo wrote: > > --- work.orig/kernel/ptrace.c > +++ work/kernel/ptrace.c > @@ -313,7 +313,7 @@ int ptrace_detach(struct task_struct *ch > child->exit_code = data; > dead = __ptrace_detach(current, child); > if (!child->exit_state) > - wake_up_process(child); > + wake_up_state(child, TASK_TRACED | TASK_STOPPED);
Well, it can't be TASK_TRACED at this point. And of course this still contradicts to __set_task_state(child, TASK_STOPPED) in ptrace_untrace(). IOW, to me the previous patch makes more sense.
But OK, I understand Roland's concerns. And, at least this change fixes the bug mentioned in 95a3540d.
Acked-by: Oleg Nesterov <oleg@redhat.com>
| |