X-Spam-Checker-Version: SpamAssassin 3.4.0-r929098 (2010-03-30) on oss.sgi.com X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham version=3.4.0-r929098 Received: from relay.sgi.com (relay2.corp.sgi.com [137.38.102.29]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id p7ALlXdV210453 for ; Wed, 10 Aug 2011 16:47:33 -0500 Received: from xmail.sgi.com (pv-excas3-dc21-nlb.corp.sgi.com [137.38.102.207]) by relay2.corp.sgi.com (Postfix) with ESMTP id BC551304051; Wed, 10 Aug 2011 14:47:30 -0700 (PDT) Received: from [127.0.0.1] (128.162.232.50) by xmail.sgi.com (137.38.102.30) with Microsoft SMTP Server (TLS) id 14.1.289.1; Wed, 10 Aug 2011 16:47:30 -0500 Subject: Re: [PATCH v2 3/7] xfsdump: remove SIGCHLD handling From: Alex Elder Reply-To: To: Bill Kendall CC: In-Reply-To: <1312497011-24840-4-git-send-email-wkendall@sgi.com> References: <1312497011-24840-1-git-send-email-wkendall@sgi.com> <1312497011-24840-4-git-send-email-wkendall@sgi.com> Content-Type: text/plain; charset="UTF-8" Date: Wed, 10 Aug 2011 16:47:29 -0500 Message-ID: <1313012849.2865.135.camel@doink> MIME-Version: 1.0 X-Mailer: Evolution 2.32.2 Content-Transfer-Encoding: 7bit X-Originating-IP: [128.162.232.50] X-Virus-Scanned: ClamAV version 0.94.2, clamav-milter version 0.94.2 on oss.sgi.com X-Virus-Status: Clean On Thu, 2011-08-04 at 17:30 -0500, Bill Kendall wrote: > The multi-stream version of xfsdump for IRIX used sprocs for > threading. When a "thread" exits with sprocs, a SIGCHLD is sent to > the main thread just as if a regular child process exited. A future > multi-stream version of xfsdump would use pthreads, so the SIGCHLD > code is no longer needed. So: > > - No longer register for or handle SIGCHLD (SIGCLD). > - Remove signal handling code for child processes. > - Remove cldmgr_killall() as there are no children. OK, it took a bit to verify this, but it looks to me like most of the child thread stuff is inoperative, because the "is miniroot" flag gets unconditionally set, and with that set everything is single-threaded. By not registering a handler for SIGCHLD you are assuming the default, which is to ignore it. It might be better to explicitly set it to SIG_IGN. Other than that, this looks good. Reviewed-by: Alex Elder > Signed-off-by: Bill Kendall > Reviewed-by: Christoph Hellwig