Another race in signal handling

Chris Shoemaker c.shoemaker at
Mon Jan 21 19:22:13 CET 2008

On Mon, Jan 21, 2008 at 06:39:12PM +0100, Marc Lehmann wrote:
> On Mon, Jan 21, 2008 at 11:25:49AM -0500, Chris Shoemaker <c.shoemaker at> wrote:
> > Here it is
> I cannot reproduce that with the current (CVS) version and various
> settings for the interval timer, but it looks like a race condition that
> was recently fixed in libev regarding forking and signal delivery (where
> signal delivery could indeed be delayed).
> Your "fix" of removing gotsig only has the effect of shrinking the time
> window of this problem occuring, it doesn't fix any underlying issue at
> all.

I just tried with the current CVS version.  I ran the program 6 times
and the longest it ran was 18 seconds.

What I'm really wondering is: what purpose does the global gotsig
serve?  I've really tried to understand, but I just can't.  Please
explain it to me.  Thanks.


More information about the libev mailing list