aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRicardo Labiaga <Ricardo.Labiaga@netapp.com>2009-12-05 16:08:41 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2009-12-05 16:08:41 -0500
commitda6ebfe34a3921cfb47b938fb819abc78c6080e5 (patch)
tree5206813e9df45fe6fd0f2fb57f315755e75e3172
parentfce5c838e13392cc88a1330d1471fe6419e02ed7 (diff)
downloadkernel_samsung_aries-da6ebfe34a3921cfb47b938fb819abc78c6080e5.zip
kernel_samsung_aries-da6ebfe34a3921cfb47b938fb819abc78c6080e5.tar.gz
kernel_samsung_aries-da6ebfe34a3921cfb47b938fb819abc78c6080e5.tar.bz2
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>
-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;