From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17004 invoked from network); 11 Jun 2001 05:52:36 -0000 Received: from sunsite.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 11 Jun 2001 05:52:36 -0000 Received: (qmail 7875 invoked by alias); 11 Jun 2001 05:52:11 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 14839 Received: (qmail 7863 invoked from network); 11 Jun 2001 05:52:10 -0000 X-Authentication-Warning: candle.brasslantern.com: schaefer set sender to lantern@shell10.ba.best.com using -f From: "Bart Schaefer" Message-Id: <1010611055016.ZM22011@candle.brasslantern.com> Date: Mon, 11 Jun 2001 05:50:16 +0000 In-Reply-To: Comments: In reply to Andrej Borsenkow "Re: hppa problems" (Jun 11, 9:35am) References: X-Mailer: Z-Mail (5.0.0 30July97) To: Andrej Borsenkow , Clint Adams Subject: Re: hppa problems Cc: , <100336-forwarded@bugs.debian.org>, , MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii On Jun 11, 9:35am, Andrej Borsenkow wrote: } } 3. There is an obvious race condition here (between call to sigsuspend and } child exit). No, there's no race condition. These two lines: sigfillset(&set); sigprocmask(SIG_SETMASK, &set, 0); mean that SIGCHLD is blocked (along with all other blockable signals). The sigsuspend() then should unblock SIGCHLD and either wait for the child to exit, or immediately allow the signal to be delivered if the child has exited already, and then return. The test is in part trying to demonstrate that the implicit race-resolution in this block/suspend pair does in fact resolve the race. -- Bart Schaefer Brass Lantern Enterprises http://www.well.com/user/barts http://www.brasslantern.com Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net