diff options
author | Jeff Layton <jlayton@redhat.com> | 2014-04-15 08:51:48 -0400 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2014-04-18 08:34:31 -0400 |
commit | 3758cf7e14b753838fe754ede3862af10b35fdac (patch) | |
tree | bf6e59c6505fe4819bc6daaa9c357be6e6d4f5c9 /fs | |
parent | 4991a628a789dc5954e98e79476d9808812292ec (diff) |
nfsd: set timeparms.to_maxval in setup_callback_client
...otherwise the logic in the timeout handling doesn't work correctly.
Spotted-by: Trond Myklebust <trond.myklebust@primarydata.com>
Cc: stable@vger.kernel.org
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfsd/nfs4callback.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/nfsd/nfs4callback.c b/fs/nfsd/nfs4callback.c index 39c8ef875f91..2c73cae9899d 100644 --- a/fs/nfsd/nfs4callback.c +++ b/fs/nfsd/nfs4callback.c | |||
@@ -654,9 +654,11 @@ static struct rpc_clnt *create_backchannel_client(struct rpc_create_args *args) | |||
654 | 654 | ||
655 | static int setup_callback_client(struct nfs4_client *clp, struct nfs4_cb_conn *conn, struct nfsd4_session *ses) | 655 | static int setup_callback_client(struct nfs4_client *clp, struct nfs4_cb_conn *conn, struct nfsd4_session *ses) |
656 | { | 656 | { |
657 | int maxtime = max_cb_time(clp->net); | ||
657 | struct rpc_timeout timeparms = { | 658 | struct rpc_timeout timeparms = { |
658 | .to_initval = max_cb_time(clp->net), | 659 | .to_initval = maxtime, |
659 | .to_retries = 0, | 660 | .to_retries = 0, |
661 | .to_maxval = maxtime, | ||
660 | }; | 662 | }; |
661 | struct rpc_create_args args = { | 663 | struct rpc_create_args args = { |
662 | .net = clp->net, | 664 | .net = clp->net, |