From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id AA9XOsdpgWLiAAEAbAwnHQ (envelope-from ) for ; Sun, 15 May 2022 22:59:52 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id EJIeOsdpgWIGhgAAauVa8A (envelope-from ) for ; Sun, 15 May 2022 22:59:51 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id A644D2A8B4 for ; Sun, 15 May 2022 22:59:51 +0200 (CEST) Received: from localhost ([::1]:56552 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nqLLC-0004bR-Ik for larch@yhetil.org; Sun, 15 May 2022 16:59:50 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36694) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nqLL2-0004bG-DG for guix-devel@gnu.org; Sun, 15 May 2022 16:59:40 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:54714) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nqLL0-0004q8-Jn; Sun, 15 May 2022 16:59:38 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=hRVAr0GhaCrTlqJI+aJZqOFRlqVdiCH8d+49PB9awTY=; b=cAV8MKD+V5DVDKq92Q8Z bQTZsfs2A22sqWZgubSYJRMZO0U7D//I1Av2qiBQ0XGk7us4lBSrK+1K1KKZMHxj8gakJI6PWDCKF +b211xGA/9m0LP8htt5T1NY/LJbD3v+CjThYg9HwSlJbsFWRjpgCVd/QfceQJZ6v4k1A/q3YN9G/d PunRlc4eN3Uki1tmTkTe3M4AcCNONcuPrMljxHcwBzrzBEJROyfZ6+401KJFdFsv+QXoWeJXzkH5h IlvTyYJaF5MFawF7rFgXcESqtrnuvZL7MhaajMImDr0O+G2WoF6tZXZK0VioQKfx3crPX1VWhyzPf p5zeIm945bOAqg==; Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:54565 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nqLL0-000751-6i; Sun, 15 May 2022 16:59:38 -0400 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Thiago Jung Bauermann Cc: Maxim Cournoyer , Kyle Meyer , zimoun , Arun Isaac , guix-devel@gnu.org Subject: Re: Updating mumi on berlin References: <87h76l8yp5.fsf@systemreboot.net> <86ee1j2g8l.fsf@gmail.com> <87h76e4w2d.fsf@systemreboot.net> <8735hs9qb2.fsf@gmail.com> <871qxacp8j.fsf@kolabnow.com> <875yml916w.fsf@gmail.com> <87o80cvjdl.fsf@kyleam.com> <877d70wtd7.fsf@kolabnow.com> <87tua4jax8.fsf@gmail.com> <8735hl0yud.fsf@gnu.org> <877d6w96by.fsf@kolabnow.com> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 26 =?utf-8?Q?Flor=C3=A9al?= an 230 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Sun, 15 May 2022 22:59:36 +0200 In-Reply-To: <877d6w96by.fsf@kolabnow.com> (Thiago Jung Bauermann's message of "Sat, 07 May 2022 22:00:46 -0300") Message-ID: <878rr2cy13.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1652648391; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=hRVAr0GhaCrTlqJI+aJZqOFRlqVdiCH8d+49PB9awTY=; b=o/636ZN0tjKZJO2nIoGE/cDLfMteMZ4mu3jio99TSz2CgSN5irpJJi8th3d1qvKYNK7PKl jMZCXF2sTyllqdCd5829FhEDZUjWdF/RipCBd8T7r1XDKD/A5hLQFttpzeIWX57sMr5YEz eLs30+mVrbAqI+inG2ShjjKPiJtFG6JZrVlI27lDzehSZqfxHxAwf7RTeGnGxTIa/CctsY sePjcw4VWaZvtxuIK02BRViLSHMA04TqWFxM8NxvaVeAuxesi5miSmeDPb0srJnnbBZM6b xOg1JWR6eyLEdUpgf+/qxpkesvg0GTLPQ8bTqTqfFcCuWJLIQ9EiF+pCrIfFYQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1652648391; a=rsa-sha256; cv=none; b=rRsn/DP8hLBRHrxcugNHZ+GsAlFuNNAfwiLQuVjS1jOxLLSM+Fau7uJYGyJn+sC+ZBqSUg FiLei85nGUYNo+xitEM5jIT5TAQIGWbh493hyN1hTFaLvjU4WS/13YiBCUEQEG46mjXyCW v5Otivm74c+rV80d+PerWGN9cUjMvIF7zyPxQn4QqtMHieeQzaBgTl9vWu9wfKRmjO+AuS f8PgRue6aarfiL2bZzQU52rNIKo9XLL95evexL5+59EU1avpOEVtywu1i05OiilBnzVuYO jzOGj2vOpYwWoGNjA/JV7aCNMuK8sw9CeZOox9zmQexlBZtAh3vLKI4zkga6rA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gnu.org header.s=fencepost-gnu-org header.b=cAV8MKD+; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -5.53 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gnu.org header.s=fencepost-gnu-org header.b=cAV8MKD+; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: A644D2A8B4 X-Spam-Score: -5.53 X-Migadu-Scanner: scn0.migadu.com X-TUID: gpnC5jaVmkow Hi, Thiago Jung Bauermann skribis: > Ludovic Court=C3=A8s writes: > >> Hi, >> >> Maxim Cournoyer skribis: >> >>> Yes, that would be the correct and general solution (I hope you get to >>> fix it, else I may look into it in some time). Workarounds currently in >>> use can be seen in our mutter package definition (it's a bit convoluted, >>> having to fork a process in which we set the child reaping property and >>> invoke the test suite via tini, acting as a fake PID 1). >> >> The Guile process running the build script (with the build phases) runs >> as PID 1. So how about doing one of these: >> >> 1. Add a final phase that does (waitpid WAIT_ANY). >> >> 2. Add a SIGCHLD handler that calls =E2=80=98waitpid=E2=80=99. >> >> I suspect the former is enough. > > I don't think it is, unless I'm misunderstanding something. The > testsuite expects the daemon to die within a few seconds of sending it > the quit command (which it does several times over the course of a > number of the tests), so having it reaped at the end of the build > process won't help. I see, makes sense. > I tried the latter a couple of weeks ago and it didn't work either, > though it's highly likely that I did something wrong in my Scheme code. > I also didn't use the 1-second timer hack so perhaps that was it. > > I just tested this (adapted from the mutter package) and it worked: > > @@ -4137,6 +4142,26 @@ (define-public public-inbox > ;; the builder. > (substitute* "t/httpd-unix.t" > (("^SKIP: \\{") "SKIP: { skip('Guix');")))) > + (replace 'check > + (lambda* (#:key target > + (tests? (not target)) (test-flags '()) > + #:allow-other-keys) > + (if tests? > + (match (primitive-fork) > + (0 ;child process > + (set-child-subreaper!) > + ;; Use tini so that signals are properly handled and > + ;; doubly-forked processes get reaped; otherwise, > + ;; lei-daemon is kept as a zombie and the testsuite > + ;; fails thinking that it didn't quit as it should. > + (apply execlp "tini" "--" > + "make" "check" test-flags)) How does a basic SIGCHLD handler fare? (sigaction SIGCHLD (lambda _ (false-if-exception (waitpid WAIT_ANY WNOHANG)))) >> Eventually, we should do one of these in gnu-build-system.scm, as in: >> >> https://issues.guix.gnu.org/30948#2 >> >> WDYT? > > I agree, possibly with the 1-second timer hack as well. Heh, I hate that one, we need to find a better solution. Thanks, Ludo=E2=80=99.