Make sure the rpc timeout was assigned with the correct value for
initial timeout and max number of retries.
Fixes: 57331a59ac0d ("NFSv4.1: Use the nfs_client's rpc timeouts for backchannel")
Signed-off-by: Samasth Norway Ananda <[email protected]>
Reviewed-by: Benjamin Coddington <[email protected]>
---
net/sunrpc/svc.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c
index f60c93e5a25d..b969e505c7b7 100644
--- a/net/sunrpc/svc.c
+++ b/net/sunrpc/svc.c
@@ -1598,10 +1598,10 @@ void svc_process_bc(struct rpc_rqst *req, struct svc_rqst *rqstp)
/* Finally, send the reply synchronously */
if (rqstp->bc_to_initval > 0) {
timeout.to_initval = rqstp->bc_to_initval;
- timeout.to_retries = rqstp->bc_to_initval;
+ timeout.to_retries = rqstp->bc_to_retries;
} else {
timeout.to_initval = req->rq_xprt->timeout->to_initval;
- timeout.to_initval = req->rq_xprt->timeout->to_retries;
+ timeout.to_retries = req->rq_xprt->timeout->to_retries;
}
memcpy(&req->rq_snd_buf, &rqstp->rq_res, sizeof(req->rq_snd_buf));
task = rpc_run_bc_task(req, &timeout);
--
2.42.0
On Mon, Jan 22, 2024 at 09:35:09PM -0800, Samasth Norway Ananda wrote:
> Make sure the rpc timeout was assigned with the correct value for
> initial timeout and max number of retries.
>
> Fixes: 57331a59ac0d ("NFSv4.1: Use the nfs_client's rpc timeouts for backchannel")
> Signed-off-by: Samasth Norway Ananda <[email protected]>
> Reviewed-by: Benjamin Coddington <[email protected]>
Reviewed-by: Chuck Lever <[email protected]>
> ---
> net/sunrpc/svc.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c
> index f60c93e5a25d..b969e505c7b7 100644
> --- a/net/sunrpc/svc.c
> +++ b/net/sunrpc/svc.c
> @@ -1598,10 +1598,10 @@ void svc_process_bc(struct rpc_rqst *req, struct svc_rqst *rqstp)
> /* Finally, send the reply synchronously */
> if (rqstp->bc_to_initval > 0) {
> timeout.to_initval = rqstp->bc_to_initval;
> - timeout.to_retries = rqstp->bc_to_initval;
> + timeout.to_retries = rqstp->bc_to_retries;
> } else {
> timeout.to_initval = req->rq_xprt->timeout->to_initval;
> - timeout.to_initval = req->rq_xprt->timeout->to_retries;
> + timeout.to_retries = req->rq_xprt->timeout->to_retries;
> }
> memcpy(&req->rq_snd_buf, &rqstp->rq_res, sizeof(req->rq_snd_buf));
> task = rpc_run_bc_task(req, &timeout);
> --
> 2.42.0
>
>
--
Chuck Lever
On Mon, 2024-01-22 at 21:35 -0800, Samasth Norway Ananda wrote:
> Make sure the rpc timeout was assigned with the correct value for
> initial timeout and max number of retries.
>
> Fixes: 57331a59ac0d ("NFSv4.1: Use the nfs_client's rpc timeouts for backchannel")
> Signed-off-by: Samasth Norway Ananda <[email protected]>
> Reviewed-by: Benjamin Coddington <[email protected]>
> ---
> net/sunrpc/svc.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c
> index f60c93e5a25d..b969e505c7b7 100644
> --- a/net/sunrpc/svc.c
> +++ b/net/sunrpc/svc.c
> @@ -1598,10 +1598,10 @@ void svc_process_bc(struct rpc_rqst *req, struct svc_rqst *rqstp)
> /* Finally, send the reply synchronously */
> if (rqstp->bc_to_initval > 0) {
> timeout.to_initval = rqstp->bc_to_initval;
> - timeout.to_retries = rqstp->bc_to_initval;
> + timeout.to_retries = rqstp->bc_to_retries;
> } else {
> timeout.to_initval = req->rq_xprt->timeout->to_initval;
> - timeout.to_initval = req->rq_xprt->timeout->to_retries;
> + timeout.to_retries = req->rq_xprt->timeout->to_retries;
> }
> memcpy(&req->rq_snd_buf, &rqstp->rq_res, sizeof(req->rq_snd_buf));
> task = rpc_run_bc_task(req, &timeout);
The original patch went in via Anna's tree, but this is more a server-
side RPC patch. Who's planning to pick this one up? In any case:
Reviewed-by: Jeff Layton <[email protected]>
> On Jan 29, 2024, at 12:04 PM, Jeff Layton <[email protected]> wrote:
>
> On Mon, 2024-01-22 at 21:35 -0800, Samasth Norway Ananda wrote:
>> Make sure the rpc timeout was assigned with the correct value for
>> initial timeout and max number of retries.
>>
>> Fixes: 57331a59ac0d ("NFSv4.1: Use the nfs_client's rpc timeouts for backchannel")
>> Signed-off-by: Samasth Norway Ananda <[email protected]>
>> Reviewed-by: Benjamin Coddington <[email protected]>
>> ---
>> net/sunrpc/svc.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c
>> index f60c93e5a25d..b969e505c7b7 100644
>> --- a/net/sunrpc/svc.c
>> +++ b/net/sunrpc/svc.c
>> @@ -1598,10 +1598,10 @@ void svc_process_bc(struct rpc_rqst *req, struct svc_rqst *rqstp)
>> /* Finally, send the reply synchronously */
>> if (rqstp->bc_to_initval > 0) {
>> timeout.to_initval = rqstp->bc_to_initval;
>> - timeout.to_retries = rqstp->bc_to_initval;
>> + timeout.to_retries = rqstp->bc_to_retries;
>> } else {
>> timeout.to_initval = req->rq_xprt->timeout->to_initval;
>> - timeout.to_initval = req->rq_xprt->timeout->to_retries;
>> + timeout.to_retries = req->rq_xprt->timeout->to_retries;
>> }
>> memcpy(&req->rq_snd_buf, &rqstp->rq_res, sizeof(req->rq_snd_buf));
>> task = rpc_run_bc_task(req, &timeout);
>
>
> The original patch went in via Anna's tree, but this is more a server-
> side RPC patch. Who's planning to pick this one up? In any case:
>
>
> Reviewed-by: Jeff Layton <[email protected]>
I've pushed this to nfsd-fixes. I can drop it if Anna or Trond
want to take it instead.
--
Chuck Lever