Re: SIGCHLD and SIG_IGN

Brandon S. Allbery KF8NH (allbery@kf8nh.apk.net)
Tue, 24 Nov 1998 22:23:11 -0500


In message <19981124114448.A302@perlsupport.com>, Chip Salzenberg writes:
+-----
| According to H. J. Lu:
| > I was told the behavior of
| > signal(SIGCHLD, SIG_IGN)
| > is totally undefined under POSIX.
|
| Even if that's so, Linux is fortunately in the camp of "doing things
| as they've always been done" in its current handling of SIGCHLD and
| SIG_IGN. The auto-reaping behavior probably goes all the way back to
| Unix V7, because both BSD and System V do it.
+--->8

...differently. Which is why POSIX washed its hands of the issue.

Version 7 didn't have SIGCH?LD, much less magic behavior for SIG_DFL and
SIG_IGN.

Linux, as usual, has the System III/V-style semantics for SIGCLD. The BSD
SIGCHLD semantics are (somewhat subtly) different, which causes programs
that expect BSD SIGCHLD behavior to break under Linux (and on System III/V
and derivatives) with the exact symptom seen here.

-- 
brandon s. allbery	[os/2][linux][solaris][japh]	 allbery@kf8nh.apk.net
system administrator	     [WAY too many hats]	   allbery@ece.cmu.edu
carnegie mellon / electrical and computer engineering			 KF8NH
			  Kiss my bits, Billy-boy.

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/