Red Hat Bugzilla – Bug 4627
wait does not wake
Last modified: 2008-05-01 11:37:51 EDT
The system call wait does not get interupted from a sig
alarm, sigusr1. It only ever seems to return when a child
process dies, or a sig kill/int is received. The man page
details that the wait call should return when the process
receives a signal that is being caught is sent, as well as
the sig kill/int signals.
The code was ported from HP-UX and it works correctly there,
along with Solaris.
If you require i have some sample code that proves the
problem. Is this a known bug, and if so is there a patch ??
Could you supply a program that exhibits this problem? Thanks.
changed priorities to low/low until a test case is supplied.
test case supplied. the test was using signal() to set the signal
handlers, but by default those signals will have the SA_RESTART flag
associated, so the system calls were automatically restarted. One
should use sigaction for this type of very fine control (and it also
clears things up when it comes to race conditions)
*** Bug 8908 has been marked as a duplicate of this bug. ***