standards/108390: [libc] [patch] wait4() erroneously waits for all children when SIGCHLD is SIG_IGN [regression]

Gavin Atkinson gavin at FreeBSD.org
Thu Apr 16 12:50:04 UTC 2009


The following reply was made to PR standards/108390; it has been noted by GNATS.

From: Gavin Atkinson <gavin at FreeBSD.org>
To: bug-followup at FreeBSD.org
Cc:  
Subject: Re: standards/108390: [libc] [patch] wait4() erroneously waits for
	all children when SIGCHLD is SIG_IGN [regression]
Date: Thu, 16 Apr 2009 13:45:44 +0100

 Results from supplied test script on Solaris 10:
 
 default SIGCHLD
 
 1239885904  2692 P  spawned running child
 1239885904  2693 C1 Long child sleeping
 1239885904  2692 P  spawned short running child; waitpid
 1239885904  2694 C2 short child: exiting immediately
 1239885904  2692 P  short child finished
 1239885904  2692 P  waiting for long running child
 1239885914  2693 C1 Long exiting
 1239885914  2692 P  long child finished. End of test.
 
 IGNORE SIGCHLD
 
 1239885914  2692 P  spawned running child
 1239885914  2695 C1 Long child sleeping
 1239885914  2692 P  spawned short running child; waitpid
 1239885914  2696 C2 short child: exiting immediately
 1239885914  2692 P  short child finished
 1239885914  2692 P  waiting for long running child
 1239885924  2695 C1 Long exiting
 1239885924  2692 P  long child finished. End of test.
 
 
 Results from Linux (Ubuntu 8.10):
 
 default SIGCHLD
 
 1239885858  2057 P  spawned running child
 1239885858  2058 C1 Long child sleeping
 1239885858  2059 C2 short child: exiting immediately
 1239885858  2057 P  spawned short running child; waitpid
 1239885858  2057 P  short child finished
 1239885858  2057 P  waiting for long running child
 1239885868  2058 C1 Long exiting
 1239885868  2057 P  long child finished. End of test.
 
 IGNORE SIGCHLD
 
 1239885868  2057 P  spawned running child
 1239885868  2060 C1 Long child sleeping
 1239885868  2061 C2 short child: exiting immediately
 1239885868  2057 P  spawned short running child; waitpid
 1239885868  2057 P  short child finished
 1239885868  2057 P  waiting for long running child
 1239885878  2060 C1 Long exiting
 1239885878  2057 P  long child finished. End of test.
 


More information about the freebsd-standards mailing list