From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16061 invoked by alias); 31 Jul 2006 20:39:39 -0000 Received: (qmail 16041 invoked by uid 22791); 31 Jul 2006 20:39:38 -0000 X-Spam-Check-By: sourceware.org Received: from sibelius.xs4all.nl (HELO sibelius.xs4all.nl) (82.92.89.47) by sourceware.org (qpsmtpd/0.31) with ESMTP; Mon, 31 Jul 2006 20:39:35 +0000 Received: from elgar.sibelius.xs4all.nl (root@elgar.sibelius.xs4all.nl [192.168.0.2]) by sibelius.xs4all.nl (8.13.4/8.13.4) with ESMTP id k6VKciml027273; Mon, 31 Jul 2006 22:38:44 +0200 (CEST) Received: from elgar.sibelius.xs4all.nl (kettenis@localhost.sibelius.xs4all.nl [127.0.0.1]) by elgar.sibelius.xs4all.nl (8.13.6/8.13.6) with ESMTP id k6VKch2p025974; Mon, 31 Jul 2006 22:38:43 +0200 (CEST) Received: (from kettenis@localhost) by elgar.sibelius.xs4all.nl (8.13.6/8.13.6/Submit) id k6VKchKj018729; Mon, 31 Jul 2006 22:38:43 +0200 (CEST) Date: Mon, 31 Jul 2006 20:39:00 -0000 Message-Id: <200607312038.k6VKchKj018729@elgar.sibelius.xs4all.nl> From: Mark Kettenis To: jan.kratochvil@redhat.com CC: drow@false.org, gdb-patches@sourceware.org In-reply-to: <20060729185317.GA16200@host0.dyn.jankratochvil.net> (message from Jan Kratochvil on Sat, 29 Jul 2006 20:53:17 +0200) Subject: Re: [patch] Linux MAY_FOLLOW_EXEC #2 [Re: RFC: Fix crash on i386 (%gs-)threaded programs using execve(2)] References: <20060614105510.GA12067@host0.dyn.jankratochvil.net> <20060614142552.GA15021@nevyn.them.org> <20060615203519.GA9603@host0.dyn.jankratochvil.net> <20060721181556.GA9150@lace.redhat.com> <20060721184421.GA22820@nevyn.them.org> <20060722123102.GA1936@lace.redhat.com> <20060724190332.GA13612@nevyn.them.org> <20060729185317.GA16200@host0.dyn.jankratochvil.net> Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2006-07/txt/msg00439.txt.bz2 > Date: Sat, 29 Jul 2006 20:53:17 +0200 > From: Jan Kratochvil > > That waitpid(3) WNOHANG smells there for me but it does not hurt the > testsuite. Should I investigate it more? That WNOHANG is wrong; inf_ptrace_mourn_inferior() is supposed to be called when the inferior died. We must call waitpid(2) to make sure we don't leave behind a zombie. Unfortunately there is some sort of race and we have to do a blocking wait at this stage, otherwise the rotting corpse might still escape us. Mark