Signal handler not executed

Peter Rehley
Mon Aug 13 19:33:00 GMT 2007

On Aug 9, 2007, at 10:19 AM, Christopher Faylor wrote:

> On Thu, Aug 09, 2007 at 01:09:48PM -0400, Ernie Coskrey wrote:
>> There's a very small window of vulnerability in _sigbe, which can  
>> lead
>> to signal handlers not being executed.  In _sigbe, the _cygtls  
>> lock is
>> released before incyg is decremented.  If setup_handler acquires the
>> lock just after _sigbe releases it, but before incyg is decremented,
>> setup_handler will mistakenly believe that the thread is in Cygwin  
>> code,
>> and will set up the interrupt using the tls stack.
>> _sigbe should decrement incyg before releasing the lock.
> I'll apply this but are you saying that this actually fixes your  
> problem
> or that you think it fixes your problem?


I noticed in the cvs log that at one point you changed from what the  
patch applied to releasing incyg later.  (version 1.22 to 1.23 of  
gendef).  Do you remember why you did this change?  and could this  
patch break what you tried fixing earlier?

I'm just curious.


More information about the Cygwin-patches mailing list