Messages in this thread | | | Date | Tue, 20 Feb 2007 20:20:49 +0300 | From | Oleg Nesterov <> | Subject | Re: [PATCH] fix handling of SIGCHILD from reaped child |
| |
On 02/21, KAMEZAWA Hiroyuki wrote: > > On Tue, 20 Feb 2007 17:22:57 +0300 > Oleg Nesterov <oleg@tv-sign.ru> wrote: > > > > > I'd suggest to make a separate function, but not complicate collect_signal(). > > > okay. I'll try again if people admit me to go ahead.
Yes, it would be nice to know what maintainers think. This is a user visible change, even if good.
> > > + clear_stale_sigchild(current, retval); > > > > But we are not checking that SIGCHLD is blocked? > > > I'm sorry if I don't read SUSv3 correctly. SUSv3 doesn't define how we should > do if SIGCHLD is not blocked.(so I don't check not-blocked case.)
Probably it is me who misunderstands SUSv3. Could you point me the reference to authoritative document? My understanding: if blocked AND wait() succeeds.
> IMHO, user's sig-child-handler is tend to call wait()/waitpid() and expects > successful return. So removing stale signal here may be good.
Yes. But sig-child-handler should do
while (wait() >= 0) ....
anyway, because SIGCHLD is not a realtime signal.
> If this breaks assumptions of applications on Linux, I'll not go eagerly.
I just don't know... (Michael Kerrisk cc'ed).
Oleg.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |