Re: cvs commit: src/sys/kern sys_generic.c
In message <20050125103250.GA29461_at_nagual.pp.ru>, Andrey Chernov writes:
>On Tue, Jan 25, 2005 at 11:26:32AM +0100, Poul-Henning Kamp wrote:
>> Show me code which breaks please.
>It is not an argument. Your commit violates both POSIX and SUSv3, namely
>"This volume of IEEE Std 1003.1-2001 requires that no action be taken for
>read() or write() when nbyte is zero. This is not intended to take
>precedence over detection of errors (such as invalid buffer pointers or
>file descriptors). This is consistent with the rest of this volume of IEEE
>Std 1003.1-2001, but the phrasing here could be misread to require
>detection of the zero case before any other errors."
Notice the "require" it doesn't ban the practice.
>If you read my previous message to the end, I already mention the case
>which is obviously broken: FIFOs blocking and EAGAIN returning - it must
>happens for zero byte reads too.
Go look at fifofs: we never did that (please see also rev. 1.104
to avoid a tiresome round of "you broke this" "no I didn't").
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
phk_at_FreeBSD.ORG | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
Received on Tue Jan 25 2005 - 10:37:33 UTC