Hello!
On Fri, Mar 17, 2000 at 01:46:03AM -0800, Simon Marlow wrote:
> > I don't get it - execve() and friends are supposed to reset
> > all the signal
> > handlers back to the default state, aren't they? And I can't seem to
> > construct an example to demonstrate the problem.
> Ah, I get it finally :) It's the itimer, not the signal handler that's
> causing the problem.
> I'll commit Hannah's fix.
There's still a race there between fork() and the setitimer() call.
So additionally, the signals should be blocked before fork() and
unblocked in the parent after the fork(), *and* in the child after
resetting the itimers (as blocking of signals is *not* automatically
reset by execve()).
> Cheers,
> Simon
Regards, Hannah.