summaryrefslogtreecommitdiffstats
path: root/fs/nfs/callback_proc.c
diff options
context:
space:
mode:
authorTrond Myklebust2015-02-18 20:34:58 +0100
committerTrond Myklebust2015-02-18 21:30:47 +0100
commitb1c0df5fadc917ba3724ae9fdfcc6f97db34736a (patch)
tree0f369742e4d930a2ae0de2bcd03373a47d7f0586 /fs/nfs/callback_proc.c
parentNFSv4.1: Clean up create_session (diff)
downloadkernel-qcow2-linux-b1c0df5fadc917ba3724ae9fdfcc6f97db34736a.tar.gz
kernel-qcow2-linux-b1c0df5fadc917ba3724ae9fdfcc6f97db34736a.tar.xz
kernel-qcow2-linux-b1c0df5fadc917ba3724ae9fdfcc6f97db34736a.zip
NFSv4.1: Don't set up a backchannel if the server didn't agree to do so
If the server doesn't agree to out backchannel setup request, then don't set one up. Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'fs/nfs/callback_proc.c')
-rw-r--r--fs/nfs/callback_proc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/nfs/callback_proc.c b/fs/nfs/callback_proc.c
index e36a9d78ea49..197806fb87ff 100644
--- a/fs/nfs/callback_proc.c
+++ b/fs/nfs/callback_proc.c
@@ -427,6 +427,8 @@ __be32 nfs4_callback_sequence(struct cb_sequenceargs *args,
if (clp == NULL)
goto out;
+ if (!(clp->cl_session->flags & SESSION4_BACK_CHAN))
+ goto out;
tbl = &clp->cl_session->bc_slot_table;
spin_lock(&tbl->slot_tbl_lock);