Signal handling tune up.

Pierre A. Humblet
Tue Aug 19 02:57:00 GMT 2003

At 09:58 PM 8/18/2003 -0400, Christopher Faylor wrote:
>I only applied the reversal of the movl with the call above since I'm
>not convinced that moving the set_process_mask into interrupt_setup
>doesn't introduce a race.  It seems like your code could be setting the
>signal mask in interrupt_setup while it is also being restured in
>sigreturn.  That would end up with the signal mask being indeterminate.

Bummer. You are right.
In practice breaking out of the inner loop (decrementing sigtodo)
should have about the same effect as having the sigthread itself set
the mask, i.e. when sigtodo is > 1 , the sigthread will only start one 
handler and won't find the sigsave busy.


More information about the Cygwin-patches mailing list