From owner-freebsd-arch Thu Oct 25 15:14:59 2001 Delivered-To: freebsd-arch@freebsd.org Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by hub.freebsd.org (Postfix) with ESMTP id AD0A537B405 for ; Thu, 25 Oct 2001 15:14:55 -0700 (PDT) Received: from fledge.watson.org (robert@fledge.pr.watson.org [192.0.2.3]) by fledge.watson.org (8.11.6/8.11.5) with SMTP id f9PMEjB76030; Thu, 25 Oct 2001 18:14:49 -0400 (EDT) (envelope-from robert@fledge.watson.org) Date: Thu, 25 Oct 2001 18:14:45 -0400 (EDT) From: Robert Watson X-Sender: robert@fledge.watson.org To: Alfred Perlstein Cc: arch@FreeBSD.org Subject: Re: Behavior of select() on pipes In-Reply-To: <20011025161200.N15052@elvis.mu.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Thu, 25 Oct 2001, Alfred Perlstein wrote: > * Robert Watson [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. My understanding, from my reading of the PR, is that it does so. However, I'm not familiar with the sections of the standards describing fifos, and was hoping for input from those that would. Robert N M Watson FreeBSD Core Team, TrustedBSD Project robert@fledge.watson.org NAI Labs, Safeport Network Services To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message