Re: [PATCH] NFS: Fix "BUG at fs/aio.c:554!"
From: Chuck Lever <hidden>
Date: 2011-01-19 23:39:16
Also in:
linux-fsdevel
On Jan 19, 2011, at 6:37 PM, Nick Piggin wrote:
On Thu, Jan 20, 2011 at 10:31 AM, Trond Myklebust [off-list ref] wrote:quoted
On Thu, 2011-01-20 at 10:26 +1100, Nick Piggin wrote:quoted
On Thu, Jan 20, 2011 at 10:25 AM, Trond Myklebustquoted
quoted
quoted
Also, why is EIO the correct reply when no bytes were read/written? Why shouldn't the VFS aio code be able to cope with a zero byte reply?What would it do?Just return that zero byte reply to userland. zero bytes is a valid reply for ordinary read() and write(), so why should we have to do anything different for aio_read()/aio_write()?It doesn't give userspace much to do. zero reply from read means EOF. Zero reply from write is pretty useless, I don't think we do it in the buffered write path -- we either ensure we write at least something or have a meaningful error to return.
I think in this case, the zero-length requests are already shunted off. No zero-length requests make it down here, IIRC. So we expect that either some bytes are started, or an error occurs. If zero bytes were started and no error occurred, that's just... wrong. -- Chuck Lever chuck[dot]lever[at]oracle[dot]com