From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 25 17:24:34 2016 Received: (at submit) by debbugs.gnu.org; 25 Nov 2016 22:24:34 +0000 Received: from localhost ([127.0.0.1]:41841 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAOv4-0006y0-Gf for submit@debbugs.gnu.org; Fri, 25 Nov 2016 17:24:34 -0500 Received: from eggs.gnu.org ([208.118.235.92]:33994) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAOv2-0006xm-Ij for submit@debbugs.gnu.org; Fri, 25 Nov 2016 17:24:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cAOuw-00027i-JF for submit@debbugs.gnu.org; Fri, 25 Nov 2016 17:24:27 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=BAYES_20,FREEMAIL_FROM, HTML_MESSAGE,T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:46978) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cAOuw-00027a-G0 for submit@debbugs.gnu.org; Fri, 25 Nov 2016 17:24:26 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53197) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cAOuv-0003KI-7z for bug-coreutils@gnu.org; Fri, 25 Nov 2016 17:24:26 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cAOuu-00025h-57 for bug-coreutils@gnu.org; Fri, 25 Nov 2016 17:24:25 -0500 Received: from mail-ua0-x234.google.com ([2607:f8b0:400c:c08::234]:32798) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cAOut-00025I-VL for bug-coreutils@gnu.org; Fri, 25 Nov 2016 17:24:24 -0500 Received: by mail-ua0-x234.google.com with SMTP id 20so89388551uak.0 for ; Fri, 25 Nov 2016 14:24:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to; bh=nJCNHmw/IpqnV2F8Yev7yyzi0ISuysokOUTL2ObpCSU=; b=Dgay8bqqBJ6Nksi3892Dl8zSx+hzNP2F6g0hSHIzgnylOAroSIyNMF1UmuNmeQLg8+ HSY8NZ8dh+g0LGyI8DJ0vbx93X7XhqdWYmKN0qegkQ9HILaBIBrUe6xYW0wT/VuqoDy6 Hdkcy5f63dyvYCHYhQUwbQXxHrQvm8S/vzDS4fZrgiUoFI0HR/R98vBSlSFaWbTC3MhB mL7tCCksMVr+ufD7+7K+uidgdMLZzJ2lJlpEsG8qBOUVo8/ObUnDGtLVBnQf8t2msMO7 wLFqiaJXld5ZwAa+hViFGE7MDlExwUslZ3zA/zu6Em0Tf7NU+78Z111X7ovPmDkLgyby CM9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=nJCNHmw/IpqnV2F8Yev7yyzi0ISuysokOUTL2ObpCSU=; b=eyBqMY6rCAcwYlAUnsHuNXNAxArl9vJsl0vyLfsxNlEyYPSYlKk8gaQVjvSx6UTLua X2iv2kEEsE+ANCkuVX93kmbemZtNNmONsZ4MbGgHA0u2fsa2CEX1/68g+9dFYeBzbw6+ Oc7hasoahjwxZLzVQXDxWOyX3RCxzuO7u545zEfanK4Y5dIHhE1MfFawXKI6vIyyY0u3 tTuGsNwoewuiCExroDNK8oqRzfoQMhiD853KQfYLvb8UXlXTsbHyegDupXsTwOX5sHOZ vYlOVjoKnV1B0nKvAX7yqxEdL0CWUz1+rNWW0T98BDAlOJyA5DE9yskoaAKNy6E4PSph /xxg== X-Gm-Message-State: AKaTC02E4CJiHPS1r6kD+OkM/JlIUBbplsbDYz6u/hMBU6nIr7aqk2fZuyLAfFIhpNlERvKKYOuFYNhiVEHWYQ== X-Received: by 10.176.68.132 with SMTP id n4mr2550611uan.75.1480112662991; Fri, 25 Nov 2016 14:24:22 -0800 (PST) MIME-Version: 1.0 Received: by 10.103.12.134 with HTTP; Fri, 25 Nov 2016 14:24:22 -0800 (PST) From: Alex Ryan Date: Fri, 25 Nov 2016 14:24:22 -0800 Message-ID: Subject: =?UTF-8?Q?shuf_generates_=E2=80=9CBad_file_descriptor=E2=80=9D_error_on_nf?= =?UTF-8?Q?s_but_only_when_run_as_a_background_process?= To: bug-coreutils@gnu.org Content-Type: multipart/alternative; boundary=001a1148c9cc81572d05422795ec X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.0 (----) --001a1148c9cc81572d05422795ec Content-Type: text/plain; charset=UTF-8 I am not certain about this but I *think* this might be a bug in shuf. full description of how to reproduce is here http://stackoverflow.com/questions/40730239/shuf-generates-bad-file-descriptor-error-on-nfs-but-only-when-run-as-a-backgro -- Alex Ryan https://www.linkedin.com/in/alexryan --001a1148c9cc81572d05422795ec Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

I am not certain about this but I *think* t= his might be a bug in shuf.

full description of how to r= eproduce is here
<= br clear=3D"all">

--
--001a1148c9cc81572d05422795ec-- From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 25 18:20:33 2016 Received: (at 25029) by debbugs.gnu.org; 25 Nov 2016 23:20:33 +0000 Received: from localhost ([127.0.0.1]:41876 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAPnF-0001UD-79 for submit@debbugs.gnu.org; Fri, 25 Nov 2016 18:20:33 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:51496) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAPnC-0001Tv-J0 for 25029@debbugs.gnu.org; Fri, 25 Nov 2016 18:20:31 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 640AD1600EC; Fri, 25 Nov 2016 15:20:24 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id ctlD2S4cLeAn; Fri, 25 Nov 2016 15:20:23 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id A94E11600EE; Fri, 25 Nov 2016 15:20:23 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id O5Z7_SlaS4sT; Fri, 25 Nov 2016 15:20:23 -0800 (PST) Received: from [192.168.1.9] (unknown [47.153.178.162]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 7DFE81600EC; Fri, 25 Nov 2016 15:20:23 -0800 (PST) Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= To: Alex Ryan , 25029@debbugs.gnu.org References: From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <80e1057b-c71a-1fed-ff74-9b3165b3734f@cs.ucla.edu> Date: Fri, 25 Nov 2016 15:20:23 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -3.0 (---) X-Debbugs-Envelope-To: 25029 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.0 (---) I see no real evidence that this is a bug in 'shuf'. It looks like a bug in the program that calls 'shuf'. You can verify this by using 'strace shuf' instead of plain 'shuf'. From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 25 18:59:17 2016 Received: (at 25029) by debbugs.gnu.org; 25 Nov 2016 23:59:17 +0000 Received: from localhost ([127.0.0.1]:41894 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAQOi-0002NJ-S7 for submit@debbugs.gnu.org; Fri, 25 Nov 2016 18:59:17 -0500 Received: from mail.magicbluesmoke.com ([82.195.144.49]:33124) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAQOh-0002NB-G8 for 25029@debbugs.gnu.org; Fri, 25 Nov 2016 18:59:15 -0500 Received: from [192.168.1.80] (unknown [109.77.120.105]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.magicbluesmoke.com (Postfix) with ESMTPSA id 0A7C5200; Fri, 25 Nov 2016 23:59:14 +0000 (GMT) Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= To: Alex Ryan , 25029@debbugs.gnu.org References: From: =?UTF-8?Q?P=c3=a1draig_Brady?= Message-ID: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> Date: Fri, 25 Nov 2016 23:59:13 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 25029 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) On 25/11/16 22:24, Alex Ryan wrote: > I am not certain about this but I *think* this might be a bug in shuf. > > full description of how to reproduce is here > http://stackoverflow.com/questions/40730239/shuf-generates-bad-file-descriptor-error-on-nfs-but-only-when-run-as-a-backgro The minimum reproducer is: $ shuf 0>&- shuf: read error: Bad file descriptor The reason is that the specified file is reopened to stdin, which is a general technique used by single file filters. I.E. this isn't specific to shuf: $ tac 0>&- tac: standard input: read error: Bad file descriptor You can avoid the issue by redirecting stdin from the file like: $ shuf < your_file cheers, Pádraig. From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 25 19:06:51 2016 Received: (at 25029) by debbugs.gnu.org; 26 Nov 2016 00:06:51 +0000 Received: from localhost ([127.0.0.1]:41899 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAQW3-0002Z2-LL for submit@debbugs.gnu.org; Fri, 25 Nov 2016 19:06:51 -0500 Received: from mail.magicbluesmoke.com ([82.195.144.49]:33156) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAQW2-0002Yt-CA for 25029@debbugs.gnu.org; Fri, 25 Nov 2016 19:06:50 -0500 Received: from [192.168.1.80] (unknown [109.77.120.105]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.magicbluesmoke.com (Postfix) with ESMTPSA id A4D824A6D; Sat, 26 Nov 2016 00:06:49 +0000 (GMT) Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= To: Alex Ryan , 25029@debbugs.gnu.org References: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> From: =?UTF-8?Q?P=c3=a1draig_Brady?= Message-ID: <0f26434f-5464-00f4-48ca-717409d834d6@draigBrady.com> Date: Sat, 26 Nov 2016 00:06:49 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 25029 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) On 25/11/16 23:59, Pádraig Brady wrote: > On 25/11/16 22:24, Alex Ryan wrote: >> I am not certain about this but I *think* this might be a bug in shuf. >> >> full description of how to reproduce is here >> http://stackoverflow.com/questions/40730239/shuf-generates-bad-file-descriptor-error-on-nfs-but-only-when-run-as-a-backgro > > The minimum reproducer is: > > $ shuf 0>&- > shuf: read error: Bad file descriptor > > The reason is that the specified file is reopened to stdin, > which is a general technique used by single file filters. > I.E. this isn't specific to shuf: > > $ tac 0>&- > tac: standard input: read error: Bad file descriptor > > You can avoid the issue by redirecting stdin from the file like: > > $ shuf < your_file Actually the minimum reproducer is: $ shuf /dev/null 0>&- shuf: read error: Bad file descriptor That format shows that tac doesn't have the issue (and tac is not a single file util anyway): but uniq does have the issue: $ uniq /dev/null 0>&- uniq: error reading /dev/null We might be able to improve this. Anyway the workaround presented previously should work. cheers, Pádraig From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 25 19:39:32 2016 Received: (at 25029) by debbugs.gnu.org; 26 Nov 2016 00:39:32 +0000 Received: from localhost ([127.0.0.1]:41923 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAR1g-0003Na-J8 for submit@debbugs.gnu.org; Fri, 25 Nov 2016 19:39:32 -0500 Received: from mail-ua0-f194.google.com ([209.85.217.194]:35502) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAR1e-0003NK-BM for 25029@debbugs.gnu.org; Fri, 25 Nov 2016 19:39:30 -0500 Received: by mail-ua0-f194.google.com with SMTP id 50so4809999uae.2 for <25029@debbugs.gnu.org>; Fri, 25 Nov 2016 16:39:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=uRYJm7RukGHzXPbv9vyyn+ivhfjvMUrvk3hZwP9OWoQ=; b=avKuD/HIMqzGJl1B6ILv0DE7EkSVTtjOoF1hwxOp8SiVFIKmm72jCh1T0UpfK/A0YO AS+xsbNdJ93rjlWUI1ocees99QFyzR6g6gniiOWSEtJn/DXaxjKBxE2yjR+lrKpOoeCU KywDGm8vRoRpwWHwZ/2I2vLxVUxxP9pxfft6ZwHXwMKxG1o2Bx7sBbvqu3/Cs4f6574S j4nQDiPX7k6Rv5sQR5WUZlQmb1ARK/zVGUMj/yeZC49+A/HIWhG179TL5gN8Agl9X/NB gwcGYhh9ul0lqELrzPdB+s/5TXdlvqFQjXlumWvMgrFGANfqTWH2WAWz8SIHZVs0pv3O UJKg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=uRYJm7RukGHzXPbv9vyyn+ivhfjvMUrvk3hZwP9OWoQ=; b=OIZG+8JhwHPo24XxGyhIRFcKp6x6L4iEP0W2Qr50/MiDfloNVmrj+Xh9dBi48gBQC3 wdVJ3mhziO1I2iwLj5pfhThTpkV6AdCBRMuulB8/q3PM+wXOE4qK+ixU10Kw4yfT7gyO RDFIscc40WKabmZ0kF0phrjv+C6TRGyF1odoyph/x+hXuovQa1Ih5E/JAi1DwrfiFA5e nRoTn6c2lHyyWhyU1peXQzRyQKCU/QdFJt0WFNAm6WoTpxkTM4jd2Hcb43HnDgfUKSsX APuUauLEXCFieTQtqhvpU0SDylRnrFTSawQj+zBMGPXf6jh2RaWbYM6oYRQb/DZ547PR 1TGg== X-Gm-Message-State: AKaTC03z8m4gQjTj0OArRnfG+CtlevOlFQdxB9S3f3gh15RqIq+kQvGpzc7Do/n0g8GL3DKkrOGUbBrNOJ96Tw== X-Received: by 10.176.0.147 with SMTP id 19mr6332789uaj.20.1480120764605; Fri, 25 Nov 2016 16:39:24 -0800 (PST) MIME-Version: 1.0 Received: by 10.103.12.134 with HTTP; Fri, 25 Nov 2016 16:39:24 -0800 (PST) In-Reply-To: <0f26434f-5464-00f4-48ca-717409d834d6@draigBrady.com> References: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> <0f26434f-5464-00f4-48ca-717409d834d6@draigBrady.com> From: Alex Ryan Date: Fri, 25 Nov 2016 16:39:24 -0800 Message-ID: Subject: =?UTF-8?Q?Re=3A_bug=2325029=3A_shuf_generates_=E2=80=9CBad_file_descriptor?= =?UTF-8?Q?=E2=80=9D_error_on_nfs_but_only_when_run_as_a_background_process?= To: =?UTF-8?Q?P=C3=A1draig_Brady?= Content-Type: multipart/alternative; boundary=001a113dda60662c7f0542297848 X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 25029 Cc: 25029@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) --001a113dda60662c7f0542297848 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable That worked beautifully. Great explanation. Much appreciated. On Fri, Nov 25, 2016 at 4:06 PM, P=C3=A1draig Brady wrot= e: > On 25/11/16 23:59, P=C3=A1draig Brady wrote: > > On 25/11/16 22:24, Alex Ryan wrote: > >> I am not certain about this but I *think* this might be a bug in shuf. > >> > >> full description of how to reproduce is here > >> http://stackoverflow.com/questions/40730239/shuf- > generates-bad-file-descriptor-error-on-nfs-but-only-when-run-as-a-backgro > > > > The minimum reproducer is: > > > > $ shuf 0>&- > > shuf: read error: Bad file descriptor > > > > The reason is that the specified file is reopened to stdin, > > which is a general technique used by single file filters. > > I.E. this isn't specific to shuf: > > > > $ tac 0>&- > > tac: standard input: read error: Bad file descriptor > > > > You can avoid the issue by redirecting stdin from the file like: > > > > $ shuf < your_file > > Actually the minimum reproducer is: > > $ shuf /dev/null 0>&- > shuf: read error: Bad file descriptor > > That format shows that tac doesn't have the issue > (and tac is not a single file util anyway): > but uniq does have the issue: > > $ uniq /dev/null 0>&- > uniq: error reading /dev/null > > We might be able to improve this. > Anyway the workaround presented previously should work. > > cheers, > P=C3=A1draig > --=20 Alex Ryan https://www.linkedin.com/in/alexryan --001a113dda60662c7f0542297848 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
That worked beautifully.
Great explanation.
= Much appreciated.

On Fri, Nov 25, 2016 at 4:06 PM, P=C3=A1draig Brady <P@draigb= rady.com> wrote:
On 25/11/16 23:59, P=C3=A1draig Brady wrote:
> On 25/11/16 22:24, Alex Ryan wrote:
>> I am not certain about this but I *think* this might be a bug in s= huf.
>>
>> full description of how to reproduce is here
>> http://stackoverflow.com/questions/4073= 0239/shuf-generates-bad-file-descriptor-error-on-nfs-but-only-whe= n-run-as-a-backgro
>
> The minimum reproducer is:
>
>=C2=A0 =C2=A0$ shuf 0>&-
>=C2=A0 =C2=A0shuf: read error: Bad file descriptor
>
> The reason is that the specified file is reopened to stdin,
> which is a general technique used by single file filters.
> I.E. this isn't specific to shuf:
>
>=C2=A0 =C2=A0$ tac 0>&-
>=C2=A0 =C2=A0tac: standard input: read error: Bad file descriptor
>
> You can avoid the issue by redirecting stdin from the file like:
>
>=C2=A0 =C2=A0$ shuf < your_file

Actually the minimum reproducer is:

=C2=A0 $ shuf /dev/null 0>&-
=C2=A0 shuf: read error: Bad file descriptor

That format shows that tac doesn't have the issue
(and tac is not a single file util anyway):
but uniq does have the issue:

=C2=A0 $ uniq /dev/null 0>&-
=C2=A0 uniq: error reading /dev/null

We might be able to improve this.
Anyway the workaround presented previously should work.

cheers,
P=C3=A1draig



--
--001a113dda60662c7f0542297848-- From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 25 19:43:44 2016 Received: (at 25029) by debbugs.gnu.org; 26 Nov 2016 00:43:44 +0000 Received: from localhost ([127.0.0.1]:41931 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAR5k-0003TT-8C for submit@debbugs.gnu.org; Fri, 25 Nov 2016 19:43:44 -0500 Received: from mail-vk0-f51.google.com ([209.85.213.51]:34303) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAR5h-0003TG-Ov for 25029@debbugs.gnu.org; Fri, 25 Nov 2016 19:43:42 -0500 Received: by mail-vk0-f51.google.com with SMTP id x186so49400625vkd.1 for <25029@debbugs.gnu.org>; Fri, 25 Nov 2016 16:43:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=k2KcrQtEXqDZD/62Y00EA5g9lpPYXnSrA4umpjqQdQ8=; b=WOh7RWt/zx6kTML3ED7EC1haEBGD8IwXsFrGMl5hYGNY0s2FPQuQvVaowa2k5yDXaP af0a9MgFAD5x9HVVg2R3AP/w1YDTpFGOXKbUbGx81yPFgXBelwAGHT+Pum6br8Tng8C7 yXkER7X6EAyphf0b9Mxgg9PGK/kQxUofss6KNAUsJLq2y18ZGlU6f7qLv3P/QIo+S8/j 7iWEEeaRk6FZwTt0WiN/e/2PUxWLMk9y7Q5uoUE/w0PS0TcteirrbXsVR4JmmzterePI FBId5DNdalHRK91owPH/0G8xqFWx/iYzH/QZ11cKztWvKHHXObO49l6H3X9sH+kNoTgt 1+OQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=k2KcrQtEXqDZD/62Y00EA5g9lpPYXnSrA4umpjqQdQ8=; b=ZR/9g6fWeOOw/Drv4zljt+Io9kzjwvH7DPyCf1cvSaYH/VtKzETzOW9DTS1KNQqB1Q HtbeY92OsgTQGWsqYhB6AhVY5kqZMgOqRlsTMnpiZEkxSgE2IW+R9t8zyDHaNQBIIax8 BAZH31/400zXCtIHWYIbNRFhdwIWOnMsas3Gr3Rv48yY2KVhh7td1KsTgeEQK6O/D4as dK5LAVVVR35/TsfdvDpxd0fY4mElcSOMR9+YlwqfvWpJWoR1CK9cAl4cFZwo3GCEcVW7 ULqgzcqTbh4jAXsFxX+Yrf2Neyfu3lbBoDe2+zqpTZo2BA8MK+gL4UaH9a1kZOHdwgrT JFOw== X-Gm-Message-State: AKaTC00EP4wgpUS0wbXvoUCx2N74V0u3OEGNIBJBcsoxa9PruHu26TglhYkEkqiuNPwowQ+UVvFmja3J2I8Xug== X-Received: by 10.31.65.3 with SMTP id o3mr3238155vka.3.1480121016127; Fri, 25 Nov 2016 16:43:36 -0800 (PST) MIME-Version: 1.0 Received: by 10.103.12.134 with HTTP; Fri, 25 Nov 2016 16:43:35 -0800 (PST) In-Reply-To: <80e1057b-c71a-1fed-ff74-9b3165b3734f@cs.ucla.edu> References: <80e1057b-c71a-1fed-ff74-9b3165b3734f@cs.ucla.edu> From: Alex Ryan Date: Fri, 25 Nov 2016 16:43:35 -0800 Message-ID: Subject: =?UTF-8?Q?Re=3A_bug=2325029=3A_shuf_generates_=E2=80=9CBad_file_descriptor?= =?UTF-8?Q?=E2=80=9D_error_on_nfs_but_only_when_run_as_a_background_process?= To: Paul Eggert Content-Type: multipart/alternative; boundary=001a114dd3f46416080542298773 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 25029 Cc: 25029@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) --001a114dd3f46416080542298773 Content-Type: text/plain; charset=UTF-8 fyi ... here is the output of strace when the Bad file descriptor error is generated ... $nohup ./run_shuffle.sh > /tmp/run_shuffle.log 2>&1 0>&- & execve("/usr/bin/shuf", ["shuf", "/nfs/digits/datasets/com-aosvapp"...], [/* 54 vars */]) = 0 brk(0) = 0x10dc000 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9af2d5a000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("tls/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("tls/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) open("/usr/local/cuda-7.5/lib64/tls/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/local/cuda-7.5/lib64/tls/x86_64", 0x7ffcc850b6c0) = -1 ENOENT (No such file or directory) open("/usr/local/cuda-7.5/lib64/tls/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/local/cuda-7.5/lib64/tls", 0x7ffcc850b6c0) = -1 ENOENT (No such file or directory) open("/usr/local/cuda-7.5/lib64/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/local/cuda-7.5/lib64/x86_64", 0x7ffcc850b6c0) = -1 ENOENT (No such file or directory) open("/usr/local/cuda-7.5/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/local/cuda-7.5/lib64", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 0 fstat(0, {st_mode=S_IFREG|0644, st_size=78541, ...}) = 0 mmap(NULL, 78541, PROT_READ, MAP_PRIVATE, 0, 0) = 0x7f9af2d46000 close(0) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 0 read(0, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P \2\0\0\0\0\0"..., 832) = 832 fstat(0, {st_mode=S_IFREG|0755, st_size=1840928, ...}) = 0 mmap(NULL, 3949248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 0, 0) = 0x7f9af2775000 mprotect(0x7f9af292f000, 2097152, PROT_NONE) = 0 mmap(0x7f9af2b2f000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 0, 0x1ba000) = 0x7f9af2b2f000 mmap(0x7f9af2b35000, 17088, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f9af2b35000 close(0) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9af2d45000 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9af2d43000 arch_prctl(ARCH_SET_FS, 0x7f9af2d43740) = 0 mprotect(0x7f9af2b2f000, 16384, PROT_READ) = 0 mprotect(0x60a000, 4096, PROT_READ) = 0 mprotect(0x7f9af2d5c000, 4096, PROT_READ) = 0 munmap(0x7f9af2d46000, 78541) = 0 brk(0) = 0x10dc000 brk(0x10fd000) = 0x10fd000 open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 0 fstat(0, {st_mode=S_IFREG|0644, st_size=1607664, ...}) = 0 mmap(NULL, 1607664, PROT_READ, MAP_PRIVATE, 0, 0) = 0x7f9af2bba000 close(0) = 0 open("/nfs/digits/datasets/com-aosvapps-distracted-driving3/databases/TrainImagePathsAndLabels_AlpineTest1.csv", O_RDONLY) = 0 dup3(0, 0, 0) = -1 EINVAL (Invalid argument) dup2(0, 0) = 0 close(0) = 0 fadvise64(0, 0, 0, POSIX_FADV_SEQUENTIAL) = -1 EBADF (Bad file descriptor) fstat(0, 0x7ffcc850be10) = -1 EBADF (Bad file descriptor) fstat(0, 0x7ffcc850bcd0) = -1 EBADF (Bad file descriptor) mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9af2d58000 read(0, 0x10dd030, 8192) = -1 EBADF (Bad file descriptor) open("/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 0 fstat(0, {st_mode=S_IFREG|0644, st_size=2570, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f9af2d57000 read(0, "# Locale name alias data base.\n#"..., 4096) = 2570 read(0, "", 4096) = 0 close(0) = 0 munmap(0x7f9af2d57000, 4096) = 0 open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en_US.utf8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en_US/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en.UTF-8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en.utf8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en_US.UTF-8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en_US.utf8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en_US/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en.UTF-8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en.utf8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory) write(2, "shuf: ", 6shuf: ) = 6 write(2, "read error", 10read error) = 10 open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en_US.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en_US.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en_US.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale-langpack/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) write(2, ": Bad file descriptor", 21: Bad file descriptor) = 21 write(2, "\n", 1 ) = 1 close(1) = 0 close(2) = 0 exit_group(1) = ? +++ exited with 1 +++ On Fri, Nov 25, 2016 at 3:20 PM, Paul Eggert wrote: > I see no real evidence that this is a bug in 'shuf'. It looks like a bug > in the program that calls 'shuf'. You can verify this by using 'strace > shuf' instead of plain 'shuf'. > -- Alex Ryan https://www.linkedin.com/in/alexryan --001a114dd3f46416080542298773 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

fyi ...
here is the output of strac= e when the Bad file descriptor error is generated ...

<= div>$nohup ./run_shuff= le.sh > /tmp/run_shuffle.log 2>&1 0>&- &

execve("/usr/bin/shuf"= , ["shuf", "/nfs/digits/datasets/com-aosvapp"...], [/* = 54 vars */]) =3D 0

brk(0) =C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D 0x10dc000

access("/etc/ld= .so.nohwcap", F_OK) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -1 ENOENT (No su= ch file or directory)

mmap(NULL, 8192, PROT_READ|PROT_W= RITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x7f9af2d5a000

access("/etc/ld.so.preload", R_OK) =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=3D -1 ENOENT (No such file or directory)

open(&q= uot;tls/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such = file or directory)

open("tls/libc.so.6", O_RD= ONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)

open("x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (N= o such file or directory)

open("libc.so.6", O= _RDONLY|O_CLOEXEC) =C2=A0=C2=A0=3D -1 ENOENT (No such file or directory)

open("/usr/local/cuda-7.5/lib64/tls/x86_64/libc.so.6= ", O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)

stat("/usr/local/cuda-7.5/lib64/tls/x86_64", 0x7ff= cc850b6c0) =3D -1 ENOENT (No such file or directory)

o= pen("/usr/local/cuda-7.5/lib64/tls/libc.so.6", O_RDONLY|O_CLOEXEC= ) =3D -1 ENOENT (No such file or directory)

stat("= ;/usr/local/cuda-7.5/lib64/tls", 0x7ffcc850b6c0) =3D -1 ENOENT (No suc= h file or directory)

open("/usr/local/cuda-7.5/lib= 64/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file = or directory)

stat("/usr/local/cuda-7.5/lib64/x86_= 64", 0x7ffcc850b6c0) =3D -1 ENOENT (No such file or directory)<= /p>

open("/usr/local/cuda-7.5/lib64/libc.so.6", O_RDONLY= |O_CLOEXEC) =3D -1 ENOENT (No such file or directory)

s= tat("/usr/local/cuda-7.5/lib64", {st_mode=3DS_IFDIR|0755, st_size= =3D4096, ...}) =3D 0

open("/etc/ld.so.cache",= O_RDONLY|O_CLOEXEC) =3D 0

fstat(0, {st_mode=3DS_IFREG|= 0644, st_size=3D78541, ...}) =3D 0

mmap(NULL, 78541, PR= OT_READ, MAP_PRIVATE, 0, 0) =3D 0x7f9af2d46000

close(0)= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 0

access(&qu= ot;/etc/ld.so.nohwcap", F_OK) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -1 ENO= ENT (No such file or directory)

open("/lib/x86_64-= linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) =3D 0

r= ead(0, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P \2\0\0\0\0\= 0"..., 832) =3D 832

fstat(0, {st_mode=3DS_IFREG|07= 55, st_size=3D1840928, ...}) =3D 0

mmap(NULL, 3949248, = PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 0, 0) =3D 0x7f9af2775000

mprotect(0x7f9af292f000, 2097152, PROT_NONE) =3D 0=

mmap(0x7f9af2b2f000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE= |MAP_FIXED|MAP_DENYWRITE, 0, 0x1ba000) =3D 0x7f9af2b2f000

mmap(0x7f9af2b35000, 17088, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED= |MAP_ANONYMOUS, -1, 0) =3D 0x7f9af2b35000

close(0) =C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 0

mmap(NULL, 4096,= PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x7f9af2d45000=

mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP= _ANONYMOUS, -1, 0) =3D 0x7f9af2d43000

arch_prctl(ARCH_S= ET_FS, 0x7f9af2d43740) =3D 0

mprotect(0x7f9af2b2f000, 1= 6384, PROT_READ) =3D 0

mprotect(0x60a000, 4096, PROT_RE= AD) =C2=A0=C2=A0=C2=A0=C2=A0=3D 0

mprotect(0x7f9af2d5c0= 00, 4096, PROT_READ) =3D 0

munmap(0x7f9af2d46000, 78541= ) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 0<= /p>

brk(0) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 0x= 10dc000

brk(0x10fd000) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 0x10fd000

open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = =3D 0

fstat(0, {st_mode=3DS_IFREG|0644, st_size=3D16076= 64, ...}) =3D 0

mmap(NULL, 1607664, PROT_READ, MAP_PRIV= ATE, 0, 0) =3D 0x7f9af2bba000

close(0) =C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D 0

open("/nfs/digits/datas= ets/com-aosvapps-distracted-driving3/databases/TrainImagePathsAndLabels_Alp= ineTest1.csv", O_RDONLY) =3D 0

dup3(0, 0, 0) =C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D -1 EINVAL (Invalid argument)

dup2(0, 0) =C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D 0

close(0) =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D 0

fadvise64(0, 0, 0, POSIX_FADV_SEQU= ENTIAL) =3D -1 EBADF (Bad file descriptor)

fstat(0, 0= x7ffcc850be10) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -1 EBADF (Bad file descriptor)

=

= fstat(0, 0x7ffcc850bcd0) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -1 EBADF (Bad file d= escriptor)

mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_P= RIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x7f9af2d58000

read(0,= 0x10dd030, 8192) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -1 EBADF (Bad file descriptor)<= /p>

open("/usr/share/locale/locale.alias", O_RDONLY|O_CL= OEXEC) =3D 0

fstat(0, {st_mode=3DS_IFREG|0644, st_size= =3D2570, ...}) =3D 0

mmap(NULL, 4096, PROT_READ|PROT_WR= ITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x7f9af2d57000

read(0, "# Locale name alias data base.\n#"..., 4096) =3D 257= 0

read(0, "", 4096) =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 0

close(0) =C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 0

munmap(0x7f9af2d570= 00, 4096) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D 0

open("/usr/share/locale/en_US.UTF-8/LC_ME= SSAGES/coreutils.mo", O_RDONLY) =3D -1 ENOENT (No such file or directo= ry)

open("/usr/share/locale/en_US.utf8/LC_MESSAGES= /coreutils.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)

open("/usr/share/locale/en_US/LC_MESSAGES/coreutils.= mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)

open("/usr/share/locale/en.UTF-8/LC_MESSAGES/coreutils.mo"= , O_RDONLY) =3D -1 ENOENT (No such file or directory)

o= pen("/usr/share/locale/en.utf8/LC_MESSAGES/coreutils.mo", O_RDONL= Y) =3D -1 ENOENT (No such file or directory)

open("= ;/usr/share/locale/en/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D -1 ENOE= NT (No such file or directory)

open("/usr/share/lo= cale-langpack/en_US.UTF-8/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D -1 = ENOENT (No such file or directory)

open("/usr/shar= e/locale-langpack/en_US.utf8/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D = -1 ENOENT (No such file or directory)

open("/usr/s= hare/locale-langpack/en_US/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D -1= ENOENT (No such file or directory)

open("/usr/sha= re/locale-langpack/en.UTF-8/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D -= 1 ENOENT (No such file or directory)

open("/usr/sh= are/locale-langpack/en.utf8/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D -= 1 ENOENT (No such file or directory)

open("/usr/sh= are/locale-langpack/en/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D -1 ENO= ENT (No such file or directory)

write(2, "shuf: &q= uot;, 6shuf: ) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 6

w= rite(2, "read error", 10read error) =C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 10

open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/libc.mo", O_R= DONLY) =3D -1 ENOENT (No such file or directory)

open(&= quot;/usr/share/locale/en_US.utf8/LC_MESSAGES/libc.mo", O_RDONLY) =3D = -1 ENOENT (No such file or directory)

open("/usr/s= hare/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOENT (No su= ch file or directory)

open("/usr/share/locale/en.U= TF-8/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOENT (No such file or di= rectory)

open("/usr/share/locale/en.utf8/LC_MESSAG= ES/libc.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)

open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O= _RDONLY) =3D -1 ENOENT (No such file or directory)

open= ("/usr/share/locale-langpack/en_US.UTF-8/LC_MESSAGES/libc.mo", O_= RDONLY) =3D -1 ENOENT (No such file or directory)

open(= "/usr/share/locale-langpack/en_US.utf8/LC_MESSAGES/libc.mo", O_RD= ONLY) =3D -1 ENOENT (No such file or directory)

open(&q= uot;/usr/share/locale-langpack/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = =3D -1 ENOENT (No such file or directory)

open("/u= sr/share/locale-langpack/en.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) =3D = -1 ENOENT (No such file or directory)

open("/usr/s= hare/locale-langpack/en.utf8/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 EN= OENT (No such file or directory)

open("/usr/share/= locale-langpack/en/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOENT (No s= uch file or directory)

write(2, ": Bad file descri= ptor", 21: Bad file descriptor) =C2=A0=C2=A0=3D 21

write(2, "\n", 1

) =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 1

close(1) =C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 0

close(2) =C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 0

exit_group(1) =C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =3D ?

+++ exited with 1 +++




On Fri, Nov 25, 2016 at 3:20 P= M, Paul Eggert <eggert@cs.ucla.edu> wrote:
I see no real evidence that this is a bug in 'shuf= 9;. It looks like a bug in the program that calls 'shuf'. You can v= erify this by using 'strace shuf' instead of plain 'shuf'.<= br>



--
--001a114dd3f46416080542298773-- From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 25 21:00:20 2016 Received: (at 25029) by debbugs.gnu.org; 26 Nov 2016 02:00:20 +0000 Received: from localhost ([127.0.0.1]:41959 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cASHs-0005DI-Lh for submit@debbugs.gnu.org; Fri, 25 Nov 2016 21:00:20 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:35818) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cASHr-0005D6-AM for 25029@debbugs.gnu.org; Fri, 25 Nov 2016 21:00:19 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 3B0491600EC; Fri, 25 Nov 2016 18:00:12 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id B2SqHzfYBuec; Fri, 25 Nov 2016 18:00:11 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 91DEE1600ED; Fri, 25 Nov 2016 18:00:11 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 6tGM8flwCKSv; Fri, 25 Nov 2016 18:00:11 -0800 (PST) Received: from [192.168.1.9] (unknown [47.153.178.162]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 710521600EC; Fri, 25 Nov 2016 18:00:11 -0800 (PST) Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= To: =?UTF-8?Q?P=c3=a1draig_Brady?= , Alex Ryan , 25029@debbugs.gnu.org References: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> <0f26434f-5464-00f4-48ca-717409d834d6@draigBrady.com> From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: Date: Fri, 25 Nov 2016 18:00:11 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <0f26434f-5464-00f4-48ca-717409d834d6@draigBrady.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Spam-Score: -3.0 (---) X-Debbugs-Envelope-To: 25029 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.0 (---) P=C3=A1draig Brady wrote: > Actually the minimum reproducer is: > > $ shuf /dev/null 0>&- > shuf: read error: Bad file descriptor Ouch. Isn't that a bug in glibc freopen? It shouldn't fail with errno=3D=3D= EINVAL=20 merely because stdin doesn't have a valid file descriptor. If so, we shou= ld fix=20 the Gnulib freopen module to work around the bug. If not, I suppose we ca= n fix=20 this in freopen-safer. From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 25 21:30:50 2016 Received: (at 25029) by debbugs.gnu.org; 26 Nov 2016 02:30:50 +0000 Received: from localhost ([127.0.0.1]:41977 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cASlO-0005vc-5s for submit@debbugs.gnu.org; Fri, 25 Nov 2016 21:30:50 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:37752) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cASlN-0005vP-1r for 25029@debbugs.gnu.org; Fri, 25 Nov 2016 21:30:49 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 6CE4F1600EC; Fri, 25 Nov 2016 18:30:43 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id OwtokYMAYJB0; Fri, 25 Nov 2016 18:30:42 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 4B4211600ED; Fri, 25 Nov 2016 18:30:42 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 50WGV4P5pnS2; Fri, 25 Nov 2016 18:30:42 -0800 (PST) Received: from [192.168.1.9] (unknown [47.153.178.162]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 2453F1600EC; Fri, 25 Nov 2016 18:30:42 -0800 (PST) Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= To: =?UTF-8?Q?P=c3=a1draig_Brady?= , Alex Ryan , 25029@debbugs.gnu.org References: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> <0f26434f-5464-00f4-48ca-717409d834d6@draigBrady.com> From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <89da963d-16b7-3e93-fc7b-5b3fda9e730d@cs.ucla.edu> Date: Fri, 25 Nov 2016 18:30:41 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Spam-Score: -3.0 (---) X-Debbugs-Envelope-To: 25029 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.0 (---) Paul Eggert wrote: > Isn't that a bug in glibc freopen? It turns out to be a known bug; glibc bug#15589 and glibc bug#15701. I ha= ve=20 added notes there about this: https://sourceware.org/bugzilla/show_bug.cgi?id=3D15589 https://sourceware.org/bugzilla/show_bug.cgi?id=3D15701 From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 25 21:41:27 2016 Received: (at 25029) by debbugs.gnu.org; 26 Nov 2016 02:41:27 +0000 Received: from localhost ([127.0.0.1]:41983 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cASvf-0006Bh-5W for submit@debbugs.gnu.org; Fri, 25 Nov 2016 21:41:27 -0500 Received: from mail.magicbluesmoke.com ([82.195.144.49]:33590) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cASvd-0006BY-Hp for 25029@debbugs.gnu.org; Fri, 25 Nov 2016 21:41:25 -0500 Received: from [192.168.1.80] (unknown [109.77.120.105]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.magicbluesmoke.com (Postfix) with ESMTPSA id E57A14A6D; Sat, 26 Nov 2016 02:41:23 +0000 (GMT) Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= To: Paul Eggert , Alex Ryan , 25029@debbugs.gnu.org References: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> <0f26434f-5464-00f4-48ca-717409d834d6@draigBrady.com> From: =?UTF-8?Q?P=c3=a1draig_Brady?= Message-ID: <398da931-2496-6ac8-2620-d94e8743473f@draigBrady.com> Date: Sat, 26 Nov 2016 02:41:23 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 25029 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) On 26/11/16 02:00, Paul Eggert wrote: > Pádraig Brady wrote: >> Actually the minimum reproducer is: >> >> $ shuf /dev/null 0>&- >> shuf: read error: Bad file descriptor > > Ouch. Isn't that a bug in glibc freopen? It shouldn't fail with errno==EINVAL > merely because stdin doesn't have a valid file descriptor. If so, we should fix > the Gnulib freopen module to work around the bug. If not, I suppose we can fix > this in freopen-safer. Yes it's surprising. I see POSIX states freopen() should only return EBADF in the case where the pathname specified is NULL. I.E. when operating on the old descriptor. But shouldn't freopen() be using a new descriptor here? Definitely looks like a glibc bug. cheers, Pádraig From debbugs-submit-bounces@debbugs.gnu.org Sat Nov 26 18:50:04 2016 Received: (at 25029-done) by debbugs.gnu.org; 26 Nov 2016 23:50:04 +0000 Received: from localhost ([127.0.0.1]:42726 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAmjM-0006tJ-07 for submit@debbugs.gnu.org; Sat, 26 Nov 2016 18:50:04 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:35334) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAmjK-0006sm-Iy for 25029-done@debbugs.gnu.org; Sat, 26 Nov 2016 18:50:03 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 8A3D8160069; Sat, 26 Nov 2016 15:49:56 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id Uco_cTAlO-BT; Sat, 26 Nov 2016 15:49:55 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 66E2D160076; Sat, 26 Nov 2016 15:49:55 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id GvsgI3ypvzo1; Sat, 26 Nov 2016 15:49:55 -0800 (PST) Received: from [192.168.0.104] (unknown [47.153.178.162]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 2163C160069; Sat, 26 Nov 2016 15:49:55 -0800 (PST) Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= To: 25029-done@debbugs.gnu.org References: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> <0f26434f-5464-00f4-48ca-717409d834d6@draigBrady.com> From: Paul Eggert Message-ID: <3cdf1899-c716-7e1b-0f43-e1cc7da52415@cs.ucla.edu> Date: Sat, 26 Nov 2016 15:49:51 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/mixed; boundary="------------BC3CDA53CB391B40EE8444CD" X-Spam-Score: -3.0 (---) X-Debbugs-Envelope-To: 25029-done Cc: bug-gnulib@gnu.org, =?UTF-8?Q?P=c3=a1draig_Brady?= , Alex Ryan X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.0 (---) This is a multi-part message in MIME format. --------------BC3CDA53CB391B40EE8444CD Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 11/25/2016 06:00 PM, Paul Eggert wrote: > Isn't that a bug in glibc freopen? It shouldn't fail ... merely > because stdin doesn't have a valid file descriptor. If so, we should > fix the Gnulib freopen module to work around the bug. I did that, by installing the attached patches into Gnulib (first patch) and into Coreutils (2nd and 3rd patches). This fixes the shuf bug for me, so closing the bug report. CC'ing to bug-gnulib due to the Gnulib fix. --------------BC3CDA53CB391B40EE8444CD Content-Type: text/x-patch; name="freopen.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="freopen.diff" diff --git a/ChangeLog b/ChangeLog index 26eb3d5..a7e03f2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +2016-11-26 Paul Eggert + + freopen: work around glibc bug with closed fd + Work around glibc bug#15589, where freopen mishandles the case + where stdin etc. are already closed. + * doc/posix-functions/freopen.texi (freopen): Document the bug. + * lib/freopen.c (_GL_ALREADY_INCLUDING_STDIO_H): Define this + instead of __need_FILE, as the latter does not work with glibc. + Include , for open flags. + (rpl_freopen): Work around glibc bug. + * m4/freopen.m4 (gl_FUNC_FREOPEN): Check for bug. + * modules/freopen (Depends-on): Add fcntl-h. + * tests/test-freopen.c (main): Test for bug. + 2016-11-25 Paul Eggert fnmatch: fix typo introduced on 2016-08-17 diff --git a/doc/posix-functions/freopen.texi b/doc/posix-functions/freopen.texi index d14c3e1..f79a05a 100644 --- a/doc/posix-functions/freopen.texi +++ b/doc/posix-functions/freopen.texi @@ -9,6 +9,10 @@ Gnulib module: freopen Portability problems fixed by Gnulib: @itemize @item +On some platforms, if @code{stream} does not already have an open +file descriptor, @code{freopen} returns the stream without opening +the file: glibc 2.24. +@item On platforms where @code{off_t} is a 32-bit type, @code{freopen} may not work correctly with files larger than 2 GB. (Cf. @code{AC_SYS_LARGEFILE}.) @item diff --git a/lib/freopen.c b/lib/freopen.c index 4cf7528..229c1d9 100644 --- a/lib/freopen.c +++ b/lib/freopen.c @@ -19,12 +19,12 @@ /* If the user's config.h happens to include , let it include only the system's here, so that orig_freopen doesn't recurse to rpl_freopen. */ -#define __need_FILE +#define _GL_ALREADY_INCLUDING_STDIO_H #include /* Get the original definition of freopen. It might be defined as a macro. */ #include -#undef __need_FILE +#undef _GL_ALREADY_INCLUDING_STDIO_H #include @@ -39,29 +39,54 @@ orig_freopen (const char *filename, const char *mode, FILE *stream) this include because of the preliminary #include above. */ #include "stdio.h" +#include #include +#include FILE * rpl_freopen (const char *filename, const char *mode, FILE *stream) { FILE *result; - #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ - if (filename != NULL && strcmp (filename, "/dev/null") == 0) - filename = "NUL"; + char const *null_device = "NUL"; + if (filename && strcmp (filename, "/dev/null") == 0) + filename = null_device; +#else + char const *null_device = "/dev/null"; #endif - /* Clear errno to check the success of freopen() with it */ +#ifdef __KLIBC__ errno = 0; +#endif result = orig_freopen (filename, mode, stream); + if (!result) + { #ifdef __KLIBC__ - /* On OS/2 kLIBC, freopen() returns NULL even if it is successful - if filename is NULL. */ - if (!filename && !result && !errno) - result = stream; + /* On OS/2 kLIBC, freopen returns NULL even if it is successful + if filename is NULL. */ + if (!filename && !errno) + result = stream; #endif + } + else if (filename) + { + int fd = fileno (result); + if (dup2 (fd, fd) < 0 && errno == EBADF) + { + int nullfd = open (null_device, O_RDONLY | O_CLOEXEC); + int err = 0; + if (nullfd != fd) + { + if (dup2 (nullfd, fd) < 0) + err = 1; + close (nullfd); + } + if (!err) + result = orig_freopen (filename, mode, result); + } + } return result; } diff --git a/m4/freopen.m4 b/m4/freopen.m4 index 8d8e124..727eb08 100644 --- a/m4/freopen.m4 +++ b/m4/freopen.m4 @@ -1,4 +1,4 @@ -# freopen.m4 serial 5 +# freopen.m4 serial 6 dnl Copyright (C) 2007-2016 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -12,6 +12,27 @@ AC_DEFUN([gl_FUNC_FREOPEN], mingw* | pw* | os2*) REPLACE_FREOPEN=1 ;; + *) + AC_CACHE_CHECK([whether freopen works on closed fds], + [gl_cv_func_freopen_works_on_closed], + [AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include + #include + ]], + [[close (0); + return !(freopen ("/dev/null", "r", stdin) + && getchar () == EOF + && !ferror (stdin) && feof (stdin));]])], + [gl_cv_func_freopen_works_on_closed=yes], + [gl_cv_func_freopen_works_on_closed=no], + [case $host_os in + *gnu*) gl_cv_func_freopen_works_on_closed="guessing no" ;; + *) gl_cv_func_freopen_works_on_closed="guessing yes";; + esac])]) + case $gl_cv_func_freopen_works_on_closed in + *no) REPLACE_FREOPEN=1;; + esac esac ]) diff --git a/modules/freopen b/modules/freopen index 958cdbb..adb4bbc 100644 --- a/modules/freopen +++ b/modules/freopen @@ -6,6 +6,7 @@ lib/freopen.c m4/freopen.m4 Depends-on: +fcntl-h [test $REPLACE_FREOPEN = 1] stdio largefile diff --git a/tests/test-freopen.c b/tests/test-freopen.c index 80453bf..849d7d1 100644 --- a/tests/test-freopen.c +++ b/tests/test-freopen.c @@ -33,7 +33,11 @@ main () { const char *filename = "test-freopen.txt"; + close (STDIN_FILENO); ASSERT (freopen ("/dev/null", "r", stdin) != NULL); + ASSERT (getchar () == EOF); + ASSERT (!ferror (stdin)); + ASSERT (feof (stdin)); #if 0 /* freopen (NULL, ...) is unsupported on most platforms. */ /* Test that freopen() sets errno if someone else closes the stream --------------BC3CDA53CB391B40EE8444CD Content-Type: text/x-patch; name="0001-build-update-gnulib-submodule-to-latest.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="0001-build-update-gnulib-submodule-to-latest.patch" >From 7e76f092a00491532b9bbeb8d2655d7e6c313a20 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 26 Nov 2016 14:59:33 -0800 Subject: [PATCH 1/2] build: update gnulib submodule to latest --- gnulib | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnulib b/gnulib index 6b26660..ea96186 160000 --- a/gnulib +++ b/gnulib @@ -1 +1 @@ -Subproject commit 6b26660a01125acb394e39ac71635c8df4c110c4 +Subproject commit ea96186d0b25c89aab0de3129fc4bb3f7a5ccd37 -- 2.9.3 --------------BC3CDA53CB391B40EE8444CD Content-Type: text/x-patch; name="0002-shuf-test-input-closed-bug.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="0002-shuf-test-input-closed-bug.patch" >From c7c0c8b65981ab2163269ac8869ac763dc9f15c2 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 26 Nov 2016 15:37:43 -0800 Subject: [PATCH 2/2] shuf: test input-closed bug Problem reported by Alex Ryan (Bug#25029). * tests/misc/shuf.sh: Test for shuffling with stdin closed. --- tests/misc/shuf.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/misc/shuf.sh b/tests/misc/shuf.sh index dcc7e82..2e6141b 100755 --- a/tests/misc/shuf.sh +++ b/tests/misc/shuf.sh @@ -166,4 +166,9 @@ printf "A\nB\nC\nD\nE\n" | shuf --rep -n0 > exp || framework_failure_ test \! -s exp || { fail=1; echo "--repeat,STDIN,-n0 produced bad output">&2 ; } +# shuf 8.25 mishandles input if stdin is closed, due to glibc bug#15589. +# See coreutils bug#25029. +shuf /dev/null <&- >out || fail=1 +compare /dev/null out || fail=1 + Exit $fail -- 2.9.3 --------------BC3CDA53CB391B40EE8444CD-- From debbugs-submit-bounces@debbugs.gnu.org Sat Nov 26 19:18:29 2016 Received: (at 25029) by debbugs.gnu.org; 27 Nov 2016 00:18:29 +0000 Received: from localhost ([127.0.0.1]:42747 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAnAq-0007bF-RP for submit@debbugs.gnu.org; Sat, 26 Nov 2016 19:18:29 -0500 Received: from mail.magicbluesmoke.com ([82.195.144.49]:38338) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAnAp-0007b6-CQ for 25029@debbugs.gnu.org; Sat, 26 Nov 2016 19:18:27 -0500 Received: from [192.168.1.80] (unknown [109.77.120.105]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.magicbluesmoke.com (Postfix) with ESMTPSA id B9B534A4A; Sun, 27 Nov 2016 00:18:23 +0000 (GMT) Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= To: Paul Eggert , 25029@debbugs.gnu.org References: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> <0f26434f-5464-00f4-48ca-717409d834d6@draigBrady.com> <3cdf1899-c716-7e1b-0f43-e1cc7da52415@cs.ucla.edu> From: =?UTF-8?Q?P=c3=a1draig_Brady?= Message-ID: <9eb833d7-4b8c-833a-b38d-9ed198ccd1c9@draigBrady.com> Date: Sun, 27 Nov 2016 00:18:23 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: <3cdf1899-c716-7e1b-0f43-e1cc7da52415@cs.ucla.edu> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 25029 Cc: bug-gnulib@gnu.org, Alex Ryan X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) On 26/11/16 23:49, Paul Eggert wrote: > On 11/25/2016 06:00 PM, Paul Eggert wrote: >> Isn't that a bug in glibc freopen? It shouldn't fail ... merely >> because stdin doesn't have a valid file descriptor. If so, we should >> fix the Gnulib freopen module to work around the bug. > > I did that, by installing the attached patches into Gnulib (first patch) > and into Coreutils (2nd and 3rd patches). This fixes the shuf bug for > me, so closing the bug report. CC'ing to bug-gnulib due to the Gnulib fix. Cool thanks. I see it does the equivalent of: $tool file 0>&- || $tool file ) id 1cAnJe-0007q9-8q for submit@debbugs.gnu.org; Sat, 26 Nov 2016 19:27:34 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:38250) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cAnJd-0007pw-Fw for 25029@debbugs.gnu.org; Sat, 26 Nov 2016 19:27:33 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id EABB7160076; Sat, 26 Nov 2016 16:27:27 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id LBhI8kXO-2Ch; Sat, 26 Nov 2016 16:27:27 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 4C9CA160089; Sat, 26 Nov 2016 16:27:27 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id dMTWV2a42IuF; Sat, 26 Nov 2016 16:27:27 -0800 (PST) Received: from [192.168.0.104] (unknown [47.153.178.162]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 23751160076; Sat, 26 Nov 2016 16:27:27 -0800 (PST) Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= To: =?UTF-8?Q?P=c3=a1draig_Brady?= , 25029@debbugs.gnu.org References: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> <0f26434f-5464-00f4-48ca-717409d834d6@draigBrady.com> <3cdf1899-c716-7e1b-0f43-e1cc7da52415@cs.ucla.edu> <9eb833d7-4b8c-833a-b38d-9ed198ccd1c9@draigBrady.com> From: Paul Eggert Message-ID: Date: Sat, 26 Nov 2016 16:27:26 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <9eb833d7-4b8c-833a-b38d-9ed198ccd1c9@draigBrady.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Spam-Score: -3.0 (---) X-Debbugs-Envelope-To: 25029 Cc: bug-gnulib@gnu.org, Alex Ryan X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.0 (---) On 11/26/2016 04:18 PM, P=C3=A1draig Brady wrote: > Does the freopen module now need to depend on > the dup2 and open modules? For example using dup2(fd, fd) > to test fd validity fails on Linux 2.6.29 I tried to avoid that dependency, by using code that checks errno after=20 dup2 fails, so that the workaround should be attempted only on hosts=20 with the more-recent freopen bug. I haven't tested it on ancient=20 GNU/Linux systems, though. From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 28 11:37:26 2016 Received: (at 25029) by debbugs.gnu.org; 28 Nov 2016 16:37:26 +0000 Received: from localhost ([127.0.0.1]:45134 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cBOvl-0005It-QD for submit@debbugs.gnu.org; Mon, 28 Nov 2016 11:37:25 -0500 Received: from mx1.redhat.com ([209.132.183.28]:42096) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cBOvj-0005Ie-C8 for 25029@debbugs.gnu.org; Mon, 28 Nov 2016 11:37:24 -0500 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 8613A8124B; Mon, 28 Nov 2016 16:37:17 +0000 (UTC) Received: from [10.3.116.185] (ovpn-116-185.phx2.redhat.com [10.3.116.185]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id uASGbG3m017438; Mon, 28 Nov 2016 11:37:17 -0500 Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= To: =?UTF-8?Q?P=c3=a1draig_Brady?= , Alex Ryan , 25029@debbugs.gnu.org References: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> From: Eric Blake Openpgp: url=http://people.redhat.com/eblake/eblake.gpg Organization: Red Hat, Inc. Message-ID: <4b47fa47-0000-6443-f3ee-88f02e534008@redhat.com> Date: Mon, 28 Nov 2016 10:37:16 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="DVOR02s76Cl8THRSHcSaFIevLQ8ltLRRL" X-Scanned-By: MIMEDefang 2.68 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Mon, 28 Nov 2016 16:37:17 +0000 (UTC) X-Spam-Score: -7.9 (-------) X-Debbugs-Envelope-To: 25029 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -7.9 (-------) This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --DVOR02s76Cl8THRSHcSaFIevLQ8ltLRRL Content-Type: multipart/mixed; boundary="qL5b0LkPcdkF17TtEqEinB3Vl1SQaaCXg"; protected-headers="v1" From: Eric Blake To: =?UTF-8?Q?P=c3=a1draig_Brady?= , Alex Ryan , 25029@debbugs.gnu.org Message-ID: <4b47fa47-0000-6443-f3ee-88f02e534008@redhat.com> Subject: =?UTF-8?Q?Re:_bug#25029:_shuf_generates_=e2=80=9cBad_file_descripto?= =?UTF-8?Q?r=e2=80=9d_error_on_nfs_but_only_when_run_as_a_background_process?= References: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> In-Reply-To: <00805ba2-5908-7d61-7e69-fc5156554a32@draigBrady.com> --qL5b0LkPcdkF17TtEqEinB3Vl1SQaaCXg Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 11/25/2016 05:59 PM, P=C3=A1draig Brady wrote: > On 25/11/16 22:24, Alex Ryan wrote: >> I am not certain about this but I *think* this might be a bug in shuf.= >> >> full description of how to reproduce is here >> http://stackoverflow.com/questions/40730239/shuf-generates-bad-file-de= scriptor-error-on-nfs-but-only-when-run-as-a-backgro >=20 > The minimum reproducer is: >=20 > $ shuf 0>&- > shuf: read error: Bad file descriptor >=20 > The reason is that the specified file is reopened to stdin, > which is a general technique used by single file filters. > I.E. this isn't specific to shuf: >=20 > $ tac 0>&- > tac: standard input: read error: Bad file descriptor Technically, POSIX states that ANY attempt to execute a program with fd 0, 1, or 2 closed is undefined behavior, so the bug is yours for not providing an explicit stdin in the first place. But I agree that it is a nice quality-of-implementation thing for coreutils to have reasonably-sane behavior in the fact of closed fds, even if POSIX does not require us to. --=20 Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org --qL5b0LkPcdkF17TtEqEinB3Vl1SQaaCXg-- --DVOR02s76Cl8THRSHcSaFIevLQ8ltLRRL Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJYPF08AAoJEKeha0olJ0Nqgy4H/3mBXiT07AdGa+ZnNFB47uNu xDT2k5WWjDyKq1fr5UuveEwwAVpZIyI8IZLqUCTj2mqRZxT8q38kCVvuYWg8ho8/ NaK0TH5Q3Eo9BuZ7LkWY6ak84fdO331emcoBEK5K+1h9W0dqZkDwzjP2s3ypoKUJ YkbY6IybpNIkCXzJpYDJFmSTXNsEZ+vwjAk7kl5veflixMnDpdsbMxcsGh/UrFRW 756s8unVRtC5j7UqA4oH+E6YITOCZmMBt9sDaXmjU6ZodHqLXtGZGJkinR8HwTmF Suh/kySd5gFmik+NwBr0r37bi17dwF+F/uhTDpVrpafTZF2/XMyv3c1RwNcePRc= =sNTE -----END PGP SIGNATURE----- --DVOR02s76Cl8THRSHcSaFIevLQ8ltLRRL-- From unknown Mon Aug 18 11:12:00 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 27 Dec 2016 12:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator