]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
SUNRPC: rpc_clnt_set_transport() must not change the autobind setting
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Mon, 24 Mar 2025 23:35:01 +0000 (19:35 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 29 May 2025 09:12:27 +0000 (11:12 +0200)
[ Upstream commit bf9be373b830a3e48117da5d89bb6145a575f880 ]

The autobind setting was supposed to be determined in rpc_create(),
since commit c2866763b402 ("SUNRPC: use sockaddr + size when creating
remote transport endpoints").

Reviewed-by: Jeff Layton <jlayton@kernel.org>
Reviewed-by: Benjamin Coddington <bcodding@redhat.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/sunrpc/clnt.c

index 2fe88ea79a70c134e58abfb03fca230883eddf1f..c9c5f0caef6bd90b7fb7a112084a34991a22e9f7 100644 (file)
@@ -270,9 +270,6 @@ static struct rpc_xprt *rpc_clnt_set_transport(struct rpc_clnt *clnt,
        old = rcu_dereference_protected(clnt->cl_xprt,
                        lockdep_is_held(&clnt->cl_lock));
 
-       if (!xprt_bound(xprt))
-               clnt->cl_autobind = 1;
-
        clnt->cl_timeout = timeout;
        rcu_assign_pointer(clnt->cl_xprt, xprt);
        spin_unlock(&clnt->cl_lock);