Date: Thu, 25 Oct 2001 16:12:00 -0500 From: Alfred Perlstein <bright@mu.org> To: Robert Watson <rwatson@FreeBSD.org> Cc: arch@FreeBSD.org Subject: Re: Behavior of select() on pipes Message-ID: <20011025161200.N15052@elvis.mu.org> In-Reply-To: <Pine.NEB.3.96L.1011025155337.73574A-100000@fledge.watson.org>; from rwatson@FreeBSD.org on Thu, Oct 25, 2001 at 03:56:14PM -0400 References: <Pine.NEB.3.96L.1011025155337.73574A-100000@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
* Robert Watson <rwatson@FreeBSD.org> [011025 14:56] wrote: > > Alfred recently pointed me at some FreeBSD pipe behavior that I was > previously unaware of: select() will always return true regarding the > readability of a fifo, regardless of whether data is pending on the fifo. > He referred to this as "brokenness", which is a diagnosis I tend to > accept. However, it turns out to be somewhat more complicated than I > thought, witnessed by the extensive discussion on freebsd-bugs, and logged > in PR/19871. But to the short of it: it sounds to me like we should > modify the behavior of select() to match the more popular (but possibly > standards-incompliant) behavior, which allows select to block on the fifo > until data is ready (found in Solaris, Linux, et al). Rather than just > commit the patch, I thought I'd open myself up for broad flamage. > Comments on what to do are welcome. If the patch safely brings us into compatibility with both Linux and Solaris it's a no-brainer, just put it in, however if it puts FreeBSD into some other 'mode' I think it deserves further discussion. -- -Alfred Perlstein [alfred@freebsd.org] 'Instead of asking why a piece of software is using "1970s technology," start asking why software is ignoring 30 years of accumulated wisdom.' http://www.morons.org/rants/gpl-harmful.php3 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011025161200.N15052>