cvs commit: src/tools/regression/fifo/fifo_open Makefile
fifo_open.c
Robert Watson
rwatson at FreeBSD.org
Mon Sep 12 13:20:05 PDT 2005
On Mon, 12 Sep 2005, John-Mark Gurney wrote:
> Robert Watson wrote this message on Sun, Sep 11, 2005 at 13:03 +0000:
>> rwatson 2005-09-11 13:03:36 UTC
>>
>> FreeBSD src repository
>>
>> Added files:
>> tools/regression/fifo/fifo_open Makefile fifo_open.c
>> Log:
>> Add fifo_open, a basic regression test for opening fifos, which tests
>> the blocking and non-blocking forms of open based on the POSIX spec for
>> now O_NONBLOCK should be handled.
>
> I assume we aren't going to follow the useless POSIX spec for handling
> O_NONBLOCK'ing reads wrt select and friends? If you're interested in a
> basic test case, I can send you one...
>
> (That selecting on a fifo for read that doesn't have a writer will
> return true, due to the fact that EOF is available for reading on a
> O_NONBLOCK fifo.)
Right now I haven't implemented tests for select/poll/kqueue that involve
activity on a fifo where only one endpoint is open. I largely implemented
these regression tests so I could try to avoid breaking fifos when fixing
a race condition that Kris and others have been running into. Along the
way, I ran into a lot of bugs that had to be fixed before I could run the
tests successfully :-). I'm going to work on the race itself now and
revisit further testing of half-open fifos in the future (there are some
XXX's in the test code to indicate some of the uncovered cases I'm aware
of).
Robert N M Watson
More information about the cvs-src
mailing list