summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Coddington2016-11-14 17:51:37 +0100
committerAnna Schumaker2016-11-18 20:27:27 +0100
commitd41cbfc9a64d11835a5b5b90caa7d6f3a88eb1df (patch)
treedc3b6d611827112601b55fcdc6c4a6a368eb2ddc
parentNFSv4: Don't call close if the open stateid has already been cleared (diff)
downloadkernel-qcow2-linux-d41cbfc9a64d11835a5b5b90caa7d6f3a88eb1df.tar.gz
kernel-qcow2-linux-d41cbfc9a64d11835a5b5b90caa7d6f3a88eb1df.tar.xz
kernel-qcow2-linux-d41cbfc9a64d11835a5b5b90caa7d6f3a88eb1df.zip
NFSv4.1: Handle NFS4ERR_OLD_STATEID in nfs4_reclaim_open_state
Now that we're doing TEST_STATEID in nfs4_reclaim_open_state(), we can have a NFS4ERR_OLD_STATEID returned from nfs41_open_expired() . Instead of marking state recovery as failed, mark the state for recovery again. Signed-off-by: Benjamin Coddington <bcodding@redhat.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
-rw-r--r--fs/nfs/nfs4state.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c
index 5f4281ec5f72..0959c9661662 100644
--- a/fs/nfs/nfs4state.c
+++ b/fs/nfs/nfs4state.c
@@ -1547,6 +1547,7 @@ restart:
ssleep(1);
case -NFS4ERR_ADMIN_REVOKED:
case -NFS4ERR_STALE_STATEID:
+ case -NFS4ERR_OLD_STATEID:
case -NFS4ERR_BAD_STATEID:
case -NFS4ERR_RECLAIM_BAD:
case -NFS4ERR_RECLAIM_CONFLICT: