On Wed, Jan 10, 2018 at 10:01:49PM +0800, Sean Fu wrote: > > Correct, IOCB_NOWAIT read with zero count can return -EAGAIN, But I > think that it is reasonable. while it got lock, zero would be returned > in this case. Returning -EAGAIN and 0 are not the same thing. Specifically returning 0 means "end of file". Hence, it is NOT reasonable. See the man page for read(2) or the relevant Single Unix Specification standard: RETURN VALUE On success, the number of bytes read is returned (zero indicates end of file).... Changing the behavior of the system in which will break userspace is never acceptable, and even more so given that this is just a "cleanup patch". - Ted