diff options
author | Jeff Layton <jlayton@redhat.com> | 2014-04-15 08:51:48 -0400 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2014-05-18 14:58:05 +0100 |
commit | 9b492e65e428b1246074f04702bf4b81ad11efd0 (patch) | |
tree | 09d3c39f8eb8a3a7eeff2ac7d142e663e35b75e0 /fs | |
parent | 0d71d4e468519901c84933d1c627f96626d5d023 (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>
[bwh: Backported to 3.2: max_cb_time() takes no parameters]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
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 7748d6a18d97..809a38ad96aa 100644 --- a/fs/nfsd/nfs4callback.c +++ b/fs/nfsd/nfs4callback.c @@ -633,9 +633,11 @@ static int max_cb_time(void) static int setup_callback_client(struct nfs4_client *clp, struct nfs4_cb_conn *conn, struct nfsd4_session *ses) { + int maxtime = max_cb_time(); struct rpc_timeout timeparms = { - .to_initval = max_cb_time(), + .to_initval = maxtime, .to_retries = 0, + .to_maxval = maxtime, }; struct rpc_create_args args = { .net = &init_net, |