On Tue 04-10-16 18:21:14, Oleg Nesterov wrote:
[...]
> so this can't detect the multi-threaded group exit, and ...
> 
> >     list_for_each_entry_safe(p, n, &dead, ptrace_entry) {
> >             list_del_init(&p->ptrace_entry);
> > -           release_task(p);
> > +           if (release_task(p) && p == tsk)
> > +                   last = true;
> 
> this can only happen if this process auto-reaps itself. Not to mention
> that exit_notify() will never return true if traced.
> 
> No, this doesn't look right.

You are right. I should have noticed that. Especially when I was hunting
the strace hang bug. I started to have a bad feeling about this patch
but for some reason I just didn't put all the pieces together.

So the patch is completely b0rked. Back to drawing board and start
again. Oh well...

Anyway thanks and sorry to waste your time.

-- 
Michal Hocko
SUSE Labs

Reply via email to