diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2012-03-07 16:39:06 -0500 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2012-03-07 17:11:19 -0500 |
commit | 3114ea7a24d3264c090556a2444fc6d2c06176d4 (patch) | |
tree | 50b8f1f3f43c6eb93093abec368c070e2efdc7d2 /fs/nfs/nfs4_fs.h | |
parent | cf470c3e004efe16d73dc8ba9b29bdc9a5327cda (diff) | |
download | blackbird-op-linux-3114ea7a24d3264c090556a2444fc6d2c06176d4.tar.gz blackbird-op-linux-3114ea7a24d3264c090556a2444fc6d2c06176d4.zip |
NFSv4: Return the delegation if the server returns NFS4ERR_OPENMODE
If a setattr() fails because of an NFS4ERR_OPENMODE error, it is
probably due to us holding a read delegation. Ensure that the
recovery routines return that delegation in this case.
Reported-by: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: stable@vger.kernel.org
Diffstat (limited to 'fs/nfs/nfs4_fs.h')
-rw-r--r-- | fs/nfs/nfs4_fs.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs/nfs4_fs.h b/fs/nfs/nfs4_fs.h index 026878cb2698..d1989e3f23c3 100644 --- a/fs/nfs/nfs4_fs.h +++ b/fs/nfs/nfs4_fs.h @@ -182,6 +182,7 @@ struct nfs4_exception { long timeout; int retry; struct nfs4_state *state; + struct inode *inode; }; struct nfs4_state_recovery_ops { |