summaryrefslogtreecommitdiff
path: root/fs/nfs
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2009-12-03 15:53:21 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2009-12-03 15:53:21 -0500
commitc8b7ae3d3221536228260757444ee10c6d71793f (patch)
tree0fe8d45072d1f2b49e1211402843d5df15510f74 /fs/nfs
parent4f7cdf18e14f81860b856ef7694ef58eb1a751c0 (diff)
downloadlinux-stable-c8b7ae3d3221536228260757444ee10c6d71793f.tar.gz
linux-stable-c8b7ae3d3221536228260757444ee10c6d71793f.tar.bz2
linux-stable-c8b7ae3d3221536228260757444ee10c6d71793f.zip
NFSv4: Ensure the state manager handles NFS4ERR_NO_GRACE correctly
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs')
-rw-r--r--fs/nfs/nfs4state.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c
index 8f27b4f0a530..b53e37fb0302 100644
--- a/fs/nfs/nfs4state.c
+++ b/fs/nfs/nfs4state.c
@@ -1057,6 +1057,9 @@ static int nfs4_recovery_handle_error(struct nfs_client *clp, int error)
case -NFS4ERR_CB_PATH_DOWN:
nfs_handle_cb_pathdown(clp);
return 0;
+ case -NFS4ERR_NO_GRACE:
+ nfs4_state_end_reclaim_reboot(clp);
+ return 0;
case -NFS4ERR_STALE_CLIENTID:
case -NFS4ERR_LEASE_MOVED:
set_bit(NFS4CLNT_LEASE_EXPIRED, &clp->cl_state);