nfsd: set timeparms.to_maxval in setup_callback_client
authorJeff Layton <[email protected]>
Tue, 15 Apr 2014 12:51:48 +0000 (08:51 -0400)
committerJ. Bruce Fields <[email protected]>
Fri, 18 Apr 2014 12:34:31 +0000 (14:34 +0200)
...otherwise the logic in the timeout handling doesn't work correctly.

Spotted-by: Trond Myklebust <[email protected]>
Cc: [email protected]
Signed-off-by: Jeff Layton <[email protected]>
Signed-off-by: J. Bruce Fields <[email protected]>
fs/nfsd/nfs4callback.c

index 39c8ef875f91b5a93b57c8886b56569d679296a3..2c73cae9899d25007818373e11eaec1c8fdb9436 100644 (file)
@@ -654,9 +654,11 @@ static struct rpc_clnt *create_backchannel_client(struct rpc_create_args *args)
 
 static int setup_callback_client(struct nfs4_client *clp, struct nfs4_cb_conn *conn, struct nfsd4_session *ses)
 {
+       int maxtime = max_cb_time(clp->net);
        struct rpc_timeout      timeparms = {
-               .to_initval     = max_cb_time(clp->net),
+               .to_initval     = maxtime,
                .to_retries     = 0,
+               .to_maxval      = maxtime,
        };
        struct rpc_create_args args = {
                .net            = clp->net,