Date: Sun, 2 Mar 2003 15:28:33 -0800 (PST) From: Joel Ray Holveck <joelh@piqnet.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: bin/48856: Setting SIGCHLD to SIG_IGN still leaves zombies under threads Message-ID: <200303022328.h22NSXwX040923@thor.piqnet.org>
next in thread | raw e-mail | index | archive | help
>Number: 48856 >Category: bin >Synopsis: Setting SIGCHLD to SIG_IGN still leaves zombies under threads >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Mar 02 15:30:17 PST 2003 >Closed-Date: >Last-Modified: >Originator: Joel Ray Holveck >Release: FreeBSD 5.0-RELEASE i386 >Organization: >Environment: System: FreeBSD thor.piqnet.org 5.0-RELEASE FreeBSD 5.0-RELEASE #13: Sun Feb 9 17:11:33 PST 2003 root@thor.piqnet.org:/usr/local/src/freebsd/src/sys/i386/compile/THOR i386 Also a problem under: FreeBSD sindri.juniper.net 4.5-RELEASE FreeBSD 4.5-RELEASE #1: Sun Jan 26 15:01:15 PST 2003 root@sindri.juniper.net:/usr/src/sys/compile/SINDRI i386 >Description: Using pthreads under 4.x and 5.0, setting SIGCHLD to SIG_IGN still leaves zombies. Some programs may create many children and count on setting SIGCHLD to SIG_IGN to avoid waiting. >How-To-Repeat: thor$ cat > foo.c #include <sys/types.h> #include <signal.h> #include <stdlib.h> #include <unistd.h> int main() { signal (SIGCHLD, SIG_IGN); if (fork()) { sleep(1000); } exit(0); } thor$ gcc foo.c thor$ ./a.out & [1] 40860 thor$ ps ax | grep a.out 0 p1 ZW 0:00.00 (a.out) 40860 p1 S 0:00.01 ./a.out 40869 p1 S+ 0:00.01 grep a.out thor$ >Fix: I don't see a trivial fix, but it looks like adding the proper code to uthread_sig.c wouldn't be very hard. As a workaround, this bug does not exist in kthreads. This isn't much of a workaround, since a lot more bugs are suspected to be in kthreads. >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200303022328.h22NSXwX040923>