]> git.itanic.dy.fi Git - linux-stable/commit
SUNRPC: remove the maximum number of retries in call_bind_status
authorDai Ngo <dai.ngo@oracle.com>
Tue, 18 Apr 2023 20:19:02 +0000 (13:19 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 May 2023 09:13:19 +0000 (11:13 +0200)
commit9c88c82523e45eaf1de6d5afdcb7658e212ab599
tree950b8451e16d5cb611bd7c0d01a72ec5b5518db7
parentc5e44eb6430d45995b4502fee3cdfe402ecd6693
SUNRPC: remove the maximum number of retries in call_bind_status

[ Upstream commit 691d0b782066a6eeeecbfceb7910a8f6184e6105 ]

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: 0b760113a3a1 ("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>
include/linux/sunrpc/sched.h
net/sunrpc/clnt.c
net/sunrpc/sched.c