On SIGCHLD signal semantics

Marc Aurele La France (Marc.La-France@ualberta.ca)
Mon, 3 Jun 1996 14:53:16 -0600 (MDT)


Good day.

This is the readme file for tsi.sigchld.diff.gz which has been uploaded to
ftp://ftp.lmh.ox.ac.uk/incoming.

This change does not affect any kernel functionality. What it does do however
is introduce warnings under certain circumstances with respect to SIGCHLD
signal semantics. The circumstances addressed are when a parent process
decides to wait for termination of one of its child processes, but does so with
its SIGCHLD signal handler set to SIG_IGN. If the child process terminates
while its parent is waiting, this is not a problem. But if the child
terminates before the parent waits, then the parent will be told it has no
children (because the kernel has already gotten rid of any indication of the
child's existence). This can confuse the parent process.

Documentation/sigchld.txt, which is inserted by this change, comments on this
situation more thoroughly and should be consulted for details.

So far, I have been unsuccessful at digging up what various standards such as
POSIX have to say about this case. So, I am hoping that someone on this list
will point me to an already existing solution to this problem (and thus tell me
whether I am out to lunch on this one :-)).

Replies welcome.

Marc.

+----------------------------------+-----------------------------------+
| Marc Aurele La France | work: 1-403-492-9310 |
| Computing and Network Services | fax: 1-403-492-1729 |
| 352 General Services Building | email: tsi@ualberta.ca |
| University of Alberta +-----------------------------------+
| Edmonton, Alberta | |
| T6G 2H1 | Standard disclaimers apply |
| CANADA | |
+----------------------------------+-----------------------------------+