summaryrefslogtreecommitdiff
path: root/fs/nfs
diff options
context:
space:
mode:
authorRicardo Labiaga <Ricardo.Labiaga@netapp.com>2009-12-05 21:08:41 (GMT)
committerTrond Myklebust <Trond.Myklebust@netapp.com>2009-12-05 21:08:41 (GMT)
commitda6ebfe34a3921cfb47b938fb819abc78c6080e5 (patch)
tree5206813e9df45fe6fd0f2fb57f315755e75e3172 /fs/nfs
parentfce5c838e13392cc88a1330d1471fe6419e02ed7 (diff)
downloadlinux-fsl-qoriq-da6ebfe34a3921cfb47b938fb819abc78c6080e5.tar.xz
nfs41: Invoke RECLAIM_COMPLETE
This patch invokes RECLAIM_COMPLETE after the client is done reclaiming state. There are interpretations of the spec that suggest that RECLAIM_COMPLETE should also be issued after a new clientid has been obtained from the server and even if there is no state to reclaim. This tells the server that the client has no state to reclaim even if the client isn't aware the server may have rebooted. Signed-off-by: Ricardo Labiaga <Ricardo.Labiaga@netapp.com> 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 f2d2dc4..873dda7 100644
--- a/fs/nfs/nfs4state.c
+++ b/fs/nfs/nfs4state.c
@@ -1046,6 +1046,9 @@ static void nfs4_state_end_reclaim_reboot(struct nfs_client *clp)
struct rb_node *pos;
struct nfs4_state *state;
+ nfs4_reclaim_complete(clp,
+ nfs4_reboot_recovery_ops[clp->cl_minorversion]);
+
if (!test_and_clear_bit(NFS4CLNT_RECLAIM_REBOOT, &clp->cl_state))
return;