On Mon, Nov 08, 2004 at 01:05:24PM -0600, Patrick LeBoutillier wrote:
> Hi all,
>
> I'm not 100% sure this is relevant, but we had a problem with the 2.6
> kernel and wait/signal handlers
> in some other project. I know RHEL3 has some 2.6 features backported into
> it's 2.4 kernel, do this
> may be it.
>
> It seems the order in which processes can run after a fork has changed in
> 2.6. From what I understand,
> after a fork, the child now (can?) runs first instead of the parent (or
> something like that). This
> means that it's now possible for the child to terminate even before the
> parent was a chance to wait for it. Then if your handler is IGNORE you
> will never get a chance to reap the child.
I would think that even if the child terminates before the parent calls
wait(), the parent could still reap the child using wait() as it should
find any children that have termianted and not otherwise been reaped.
--
Horms
|