From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42241) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fdtYb-0000aC-HT for guix-patches@gnu.org; Fri, 13 Jul 2018 04:36:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fdtYY-0002MW-Ej for guix-patches@gnu.org; Fri, 13 Jul 2018 04:36:05 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:49763) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fdtYY-0002Lj-A9 for guix-patches@gnu.org; Fri, 13 Jul 2018 04:36:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1fdtYY-0001RJ-4I for guix-patches@gnu.org; Fri, 13 Jul 2018 04:36:02 -0400 Subject: [bug#32121] [PATCH 2/5] utils: Reset the Fiber dynamic environment in %NON-BLOCKING. Resent-Message-ID: From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <20180710230247.16639-1-clement@lassieur.org> <20180710230247.16639-2-clement@lassieur.org> Date: Fri, 13 Jul 2018 10:35:18 +0200 In-Reply-To: <20180710230247.16639-2-clement@lassieur.org> ("=?UTF-8?Q?Cl=C3=A9ment?= Lassieur"'s message of "Wed, 11 Jul 2018 01:02:44 +0200") Message-ID: <87bmbbmt2x.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: =?UTF-8?Q?Cl=C3=A9ment?= Lassieur Cc: 32121@debbugs.gnu.org Cl=C3=A9ment Lassieur skribis: > * src/cuirass/utils.scm (%non-blocking): Wrap body in PARAMETERIZE form t= hat > clears CURRENT-FIBER. > > So that PUT-MESSAGE doesn't try to suspend itself within CALL-WITH-NEW-TH= READ. > See https://lists.gnu.org/archive/html/guile-devel/2018-07/msg00009.html. Good catch! > + (parameterize (((@@ (fibers internal) current-fiber) #f)) > + (let ((channel (make-channel))) Instead of using @@, I think you can add an explicit: #:use-module ((fibers internal) #:select (current-fiber)) at the top. OK with this change! Could you also report the issue to Andy (there=E2=80=99s a GitHub thing or = you can email guile-user I guess)? Thanks, Ludo=E2=80=99.