aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Layton <jlayton@redhat.com>2014-04-15 08:51:48 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-05-06 10:55:29 -0400
commitda05ff98dcc282ca0eebd849bc87594d6c28b506 (patch)
treef9273d2b8bf9afa54357d33a5ae31e03ed3e32e7
parentd8639f243850400d0e64b2b626903b0bcef925d2 (diff)
nfsd: set timeparms.to_maxval in setup_callback_client
commit 3758cf7e14b753838fe754ede3862af10b35fdac upstream. ...otherwise the logic in the timeout handling doesn't work correctly. Spotted-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--fs/nfsd/nfs4callback.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/nfsd/nfs4callback.c b/fs/nfsd/nfs4callback.c
index 7f05cd140de3..3eaa6e30a2dc 100644
--- a/fs/nfsd/nfs4callback.c
+++ b/fs/nfsd/nfs4callback.c
@@ -637,9 +637,11 @@ static struct rpc_cred *get_backchannel_cred(struct nfs4_client *clp, struct rpc
637 637
638static int setup_callback_client(struct nfs4_client *clp, struct nfs4_cb_conn *conn, struct nfsd4_session *ses) 638static int setup_callback_client(struct nfs4_client *clp, struct nfs4_cb_conn *conn, struct nfsd4_session *ses)
639{ 639{
640 int maxtime = max_cb_time(clp->net);
640 struct rpc_timeout timeparms = { 641 struct rpc_timeout timeparms = {
641 .to_initval = max_cb_time(clp->net), 642 .to_initval = maxtime,
642 .to_retries = 0, 643 .to_retries = 0,
644 .to_maxval = maxtime,
643 }; 645 };
644 struct rpc_create_args args = { 646 struct rpc_create_args args = {
645 .net = clp->net, 647 .net = clp->net,