From owner-freebsd-stable@freebsd.org Fri Aug 28 06:09:42 2015 Return-Path: Delivered-To: freebsd-stable@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0A8729C45C9 for ; Fri, 28 Aug 2015 06:09:42 +0000 (UTC) (envelope-from boland37@xs4all.nl) Received: from lb2-smtp-cloud6.xs4all.net (lb2-smtp-cloud6.xs4all.net [194.109.24.28]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (Client CN "*.xs4all.nl", Issuer "GlobalSign Domain Validation CA - SHA256 - G2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 9ED2BB5F for ; Fri, 28 Aug 2015 06:09:41 +0000 (UTC) (envelope-from boland37@xs4all.nl) Received: from charlemagne.a43.boland.org ([62.194.208.247]) by smtp-cloud6.xs4all.net with ESMTP id A68T1r00A5LoPm60168UDA; Fri, 28 Aug 2015 08:08:29 +0200 Subject: Re: Latest stable (r287104) bash leaves zombies on exit To: Konstantin Belousov References: <63a84f64baf8768a551fc6464e8e9526@mailbox.ijs.si> <20150827162602.GJ2072@kib.kiev.ua> <55DF5C95.90502@xs4all.nl> <20150827201644.GO2072@kib.kiev.ua> Cc: Mark Martinec , freebsd-stable@freebsd.org From: Michiel Boland Message-ID: <55DFFADB.2080003@xs4all.nl> Date: Fri, 28 Aug 2015 08:08:27 +0200 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <20150827201644.GO2072@kib.kiev.ua> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Aug 2015 06:09:42 -0000 On 08/27/2015 22:16, Konstantin Belousov wrote: [...] > I just verified that the signal handler is correctly wrapped for me, on > the latest stable/10. Both with the pre-linked libthr.so and with the > library loaded dynamically at runtime. I used the test program at the > end of the message, put breakpoint on the sigusr2_handler, and looked > at the backtrace, which must include thr_sighandler(). It did in my > case, for binary built with and without -lpthread. > > Can you verify the presence of thr_sighandler() in the backtrace for > this test program, on your system ? Verified, see below. Cheers Michiel Breakpoint 1, sigusr2_handler (signo=31, si=0x7fffffffe430, u=0x7fffffffe0c0) at rtld_sigresolv.c:24 24 wait(NULL); Current language: auto; currently minimal (gdb) bt #0 sigusr2_handler (signo=31, si=0x7fffffffe430, u=0x7fffffffe0c0) at rtld_sigresolv.c:24 #1 0x000000080100d947 in handle_signal (actp=, sig=31, info=0x7fffffffe430, ucp=0x7fffffffe0c0) at /usr/src/lib/libthr/thread/thr_sig.c:243 #2 0x000000080100d158 in thr_sighandler (sig=, info=, _ucp=) at /usr/src/lib/libthr/thread/thr_sig.c:188 #3 #4 thr_kill () at thr_kill.S:3 #5 0x0000000800965066 in __raise (s=) at /usr/src/lib/libc/gen/raise.c:51 #6 0x0000000000400c72 in atexit_code () at rtld_sigresolv.c:31 #7 0x000000080093d406 in __cxa_finalize (dso=0x0) at /usr/src/lib/libc/stdlib/atexit.c:200 #8 0x00000008008de92c in exit (status=0) at /usr/src/lib/libc/stdlib/exit.c:67 #9 0x0000000000400946 in _start (ap=, cleanup=) at /usr/src/lib/csu/amd64/crt1.c:78 #10 0x0000000800621000 in ?? () #11 0x0000000000000000 in ?? ()