Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Oct 2001 15:56:14 -0400 (EDT)
From:      Robert Watson <rwatson@FreeBSD.org>
To:        arch@FreeBSD.org
Subject:   Behavior of select() on pipes
Message-ID:  <Pine.NEB.3.96L.1011025155337.73574A-100000@fledge.watson.org>

next in thread | raw e-mail | index | archive | help

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.

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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.NEB.3.96L.1011025155337.73574A-100000>