mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-29 05:44:11 +00:00
SUNRPC: remove the maximum number of retries in call_bind_status
[ Upstream commit691d0b7820
] Currently call_bind_status places a hard limit of 3 to the number of retries on EACCES error. This limit was done to prevent NLM unlock requests from being hang forever when the server keeps returning garbage. However this change causes problem for cases when NLM service takes longer than 9 seconds to register with the port mapper after a restart. This patch removes this hard coded limit and let the RPC handles the retry based on the standard hard/soft task semantics. Fixes:0b760113a3
("NLM: Don't hang forever on NLM unlock requests") Reported-by: Helen Chao <helen.chao@oracle.com> Tested-by: Helen Chao <helen.chao@oracle.com> Signed-off-by: Dai Ngo <dai.ngo@oracle.com> Reviewed-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
10dcd0ed78
commit
43d48cec9a
3 changed files with 1 additions and 6 deletions
|
@ -90,8 +90,7 @@ struct rpc_task {
|
|||
#endif
|
||||
unsigned char tk_priority : 2,/* Task priority */
|
||||
tk_garb_retry : 2,
|
||||
tk_cred_retry : 2,
|
||||
tk_rebind_retry : 2;
|
||||
tk_cred_retry : 2;
|
||||
};
|
||||
|
||||
typedef void (*rpc_action)(struct rpc_task *);
|
||||
|
|
|
@ -2050,9 +2050,6 @@ call_bind_status(struct rpc_task *task)
|
|||
status = -EOPNOTSUPP;
|
||||
break;
|
||||
}
|
||||
if (task->tk_rebind_retry == 0)
|
||||
break;
|
||||
task->tk_rebind_retry--;
|
||||
rpc_delay(task, 3*HZ);
|
||||
goto retry_timeout;
|
||||
case -ENOBUFS:
|
||||
|
|
|
@ -817,7 +817,6 @@ rpc_init_task_statistics(struct rpc_task *task)
|
|||
/* Initialize retry counters */
|
||||
task->tk_garb_retry = 2;
|
||||
task->tk_cred_retry = 2;
|
||||
task->tk_rebind_retry = 2;
|
||||
|
||||
/* starting timestamp */
|
||||
task->tk_start = ktime_get();
|
||||
|
|
Loading…
Reference in a new issue