Date: Mon, 21 Apr 2014 23:52:59 +0200 From: Emanuel Haupt <ehaupt@FreeBSD.org> To: Konstantin Belousov <kostikbel@gmail.com>, John Baldwin <jhb@freebsd.org> Cc: ports@freebsd.org, freebsd-amd64@freebsd.org Subject: Re: bash usage of fdescfs [was: Re: amd64/188699: Dev tree] Message-ID: <5355933B.4030804@FreeBSD.org> In-Reply-To: <20140421195133.GO4016@kib.kiev.ua> References: <201404171850.s3HIo1am064874@freefall.freebsd.org> <201404211431.12922.jhb@freebsd.org> <20140421195133.GO4016@kib.kiev.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
On 21/04/14 21:51, Konstantin Belousov wrote: > On Mon, Apr 21, 2014 at 02:31:12PM -0400, John Baldwin wrote: >> On Thursday, April 17, 2014 2:50:01 pm Konstantin Belousov wrote: >>> The following reply was made to PR amd64/188699; it has been noted by GNATS. >>> >>> From: Konstantin Belousov <kostikbel@gmail.com> >>> To: John Allman <freebsd@hugme.org> >>> Cc: freebsd-gnats-submit@FreeBSD.org >>> Subject: Re: amd64/188699: Dev tree >>> Date: Thu, 17 Apr 2014 21:44:52 +0300 >>> >>> On Wed, Apr 16, 2014 at 05:32:45PM +0000, John Allman wrote: >>> > This is how to reproduce it: >>> > >>> > Fresh install of 10 on AMD 64 >>> > install bash `pkg install bash` >>> > Switch to bash `bash` >>> > push a here document into a loop: `while true ; do echo; done< <(echo "123")` >>> > receive an error: "-su: /dev/fd/62: No such file or directory" >>> > >>> > I'm sorry I haven't been able to research this any further. I found how while working on some important matters. As I mentioned the above works fine in all >> previous versions of FreeBSD up until 10. >>> > >How-To-Repeat: >>> > Fresh install >>> > pkg install bash >>> > bash >>> > while true; do echo foo done< <(echo "123") >>> > >>> > -su: /dev/fd/62: No such file or directory >>> >>> So do you have fdescfs mounted on /dev/fd on the machine where the >>> test fails ? It works for me on head, and if unmounted, I get the >>> same failure message as yours. I very much doubt that it has anything >>> to do with a system version. >> >> Question I have is why is bash deciding to use /dev/fd/<n> and require >> fdescfs? On older releases bash uses named pipes for this instead. > > The aclocal.m4 contains the test which verifies the presence and usability > of /dev/fd/n for n>=3 on the _build_ host. The result of the test > is used on the installation host afterward. > > Such kinds of bugs are endemic in our ports, but apparently upstreams > are guilty too. Is there anything I can do to patch the bash port? I am more than happy to implement a fix and contact upstream about the problem. Emanuel
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5355933B.4030804>