Searched hist:238888 (Results 1 - 3 of 3) sorted by relevance
/freebsd-11.0-release/bin/sh/ | ||
H A D | trap.h | diff 238888 Sun Jul 29 18:13:08 MDT 2012 jilles sh: Fix EINTR race condition in "wait" and "set -T" using sigsuspend(). When waiting for child processes using "wait" or if "set -T" is in effect, a signal interrupts the wait. Make sure there is no window where the signal handler may be invoked (setting a flag) just before going to sleep. There is a similar race condition in the shell language, but scripts can avoid it by exiting from the trap handler or enforcing synchronization using a fifo. If SIGCHLD is not trapped, a signal handler must be installed for it. Only install this handler for the duration of the wait to avoid triggering unexpected [EINTR] errors elsewhere. Note that for some reason only SIGINT and SIGQUIT interrupt a "wait" command. This remains the case. |
H A D | trap.c | diff 238888 Sun Jul 29 18:13:08 MDT 2012 jilles sh: Fix EINTR race condition in "wait" and "set -T" using sigsuspend(). When waiting for child processes using "wait" or if "set -T" is in effect, a signal interrupts the wait. Make sure there is no window where the signal handler may be invoked (setting a flag) just before going to sleep. There is a similar race condition in the shell language, but scripts can avoid it by exiting from the trap handler or enforcing synchronization using a fifo. If SIGCHLD is not trapped, a signal handler must be installed for it. Only install this handler for the duration of the wait to avoid triggering unexpected [EINTR] errors elsewhere. Note that for some reason only SIGINT and SIGQUIT interrupt a "wait" command. This remains the case. |
H A D | jobs.c | diff 238888 Sun Jul 29 18:13:08 MDT 2012 jilles sh: Fix EINTR race condition in "wait" and "set -T" using sigsuspend(). When waiting for child processes using "wait" or if "set -T" is in effect, a signal interrupts the wait. Make sure there is no window where the signal handler may be invoked (setting a flag) just before going to sleep. There is a similar race condition in the shell language, but scripts can avoid it by exiting from the trap handler or enforcing synchronization using a fifo. If SIGCHLD is not trapped, a signal handler must be installed for it. Only install this handler for the duration of the wait to avoid triggering unexpected [EINTR] errors elsewhere. Note that for some reason only SIGINT and SIGQUIT interrupt a "wait" command. This remains the case. |
Completed in 128 milliseconds