summaryrefslogtreecommitdiff
path: root/fs/nfs/callback_proc.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2012-11-21 18:06:11 +0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2012-12-06 03:30:43 +0400
commitac0748359a55faf4618f5f0bd9f9bf967c41d218 (patch)
tree3f94f608d7ff1b88bc20a644c309535a09a828e3 /fs/nfs/callback_proc.c
parentafa296103ea3841fdc81d9d66902fe49bb765527 (diff)
downloadlinux-ac0748359a55faf4618f5f0bd9f9bf967c41d218.tar.xz
NFSv4.1: CB_RECALL_SLOT must schedule a sequence op after updating targets
RFC5661 requires us to make sure that the server knows we've updated our slot table size by sending at least one SEQUENCE op containing the new 'highest_slotid' value. We can do so using the 'CHECK_LEASE' functionality of the state manager. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/callback_proc.c')
-rw-r--r--fs/nfs/callback_proc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs/callback_proc.c b/fs/nfs/callback_proc.c
index 8610bd1d136d..f99faad78c72 100644
--- a/fs/nfs/callback_proc.c
+++ b/fs/nfs/callback_proc.c
@@ -570,6 +570,7 @@ __be32 nfs4_callback_recallslot(struct cb_recallslotargs *args, void *dummy,
status = htonl(NFS4_OK);
nfs41_set_target_slotid(fc_tbl, args->crsa_target_highest_slotid);
+ nfs41_server_notify_target_slotid_update(cps->clp);
out:
dprintk("%s: exit with status = %d\n", __func__, ntohl(status));
return status;