Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 03 Jul 2005 01:10:17 -0000
From:      "Poul-Henning Kamp" <phk@phk.freebsd.dk>
To:        Andrey Chernov <ache@nagual.pp.ru>
Cc:        cvs-src@FreeBSD.ORG, src-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG
Subject:   Re: cvs commit: src/sys/kern sys_generic.c 
Message-ID:  <80962.1106649452@critter.freebsd.dk>
In-Reply-To: Your message of "Tue, 25 Jan 2005 13:32:50 %2B0300." <20050125103250.GA29461@nagual.pp.ru> 

next in thread | previous in thread | raw e-mail | index | archive | help
In message <20050125103250.GA29461@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 thing:
>
>"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@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.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?80962.1106649452>