aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/nfs4state.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2008-12-23 15:21:46 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2008-12-23 15:21:46 -0500
commit9e33bed55239bdcee1746c31a11177d239bac1b5 (patch)
treeb6ff90aa50b1d71722ce8eb3f2cecc28dafc3e4d /fs/nfs/nfs4state.c
parent95d35cb4c473c754824967c0b069bbeb7efa4847 (diff)
NFSv4: Add recovery for individual stateids
NFSv4 defines a number of state errors which the client does not currently handle. Among those we should worry about are: NFS4ERR_ADMIN_REVOKED - the server's administrator revoked our locks and/or delegations. NFS4ERR_BAD_STATEID - the client and server are out of sync, possibly due to a delegation return racing with an OPEN request. NFS4ERR_OPENMODE - the client attempted to do something not sanctioned by the open mode of the stateid. Should normally just occur as a result of a delegation return race. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4state.c')
-rw-r--r--fs/nfs/nfs4state.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c
index ec0cbe00a804..3d78706b3efb 100644
--- a/fs/nfs/nfs4state.c
+++ b/fs/nfs/nfs4state.c
@@ -824,7 +824,7 @@ static int nfs4_state_mark_reclaim_reboot(struct nfs_client *clp, struct nfs4_st
824 return 1; 824 return 1;
825} 825}
826 826
827static int nfs4_state_mark_reclaim_nograce(struct nfs_client *clp, struct nfs4_state *state) 827int nfs4_state_mark_reclaim_nograce(struct nfs_client *clp, struct nfs4_state *state)
828{ 828{
829 set_bit(NFS_STATE_RECLAIM_NOGRACE, &state->flags); 829 set_bit(NFS_STATE_RECLAIM_NOGRACE, &state->flags);
830 clear_bit(NFS_STATE_RECLAIM_REBOOT, &state->flags); 830 clear_bit(NFS_STATE_RECLAIM_REBOOT, &state->flags);