NFSv4: Fail I/O if the state recovery fails irrevocably
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Thu, 14 Mar 2013 20:57:48 +0000 (16:57 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Mon, 25 Mar 2013 16:04:10 +0000 (12:04 -0400)
commit5d422301f97b821301efcdb6fc9d1a83a5c102d6
treeed7117feb89a0a804669f9f017d2ce3ef7fee10c
parent3ed5e2a2c394df4e03a680842c2d07a8680f133b
NFSv4: Fail I/O if the state recovery fails irrevocably

If state recovery fails with an ESTALE or a ENOENT, then we shouldn't
keep retrying. Instead, mark the stateid as being invalid and
fail the I/O with an EIO error.
For other operations such as POSIX and BSD file locking, truncate
etc, fail with an EBADF to indicate that this file descriptor is no
longer valid.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfs/nfs4_fs.h
fs/nfs/nfs4filelayout.c
fs/nfs/nfs4proc.c
fs/nfs/nfs4state.c
fs/nfs/pnfs.c