Skip to content

Commit 6f2cfaf

Browse files
liujian56smb49
authored andcommitted
sunrpc: clear XPRT_SOCK_UPD_TIMEOUT when reset transport
BugLink: https://bugs.launchpad.net/bugs/2101915 [ Upstream commit 4db9ad82a6c823094da27de4825af693a3475d51 ] Since transport->sock has been set to NULL during reset transport, XPRT_SOCK_UPD_TIMEOUT also needs to be cleared. Otherwise, the xs_tcp_set_socket_timeouts() may be triggered in xs_tcp_send_request() to dereference the transport->sock that has been set to NULL. Fixes: 7196dbb ("SUNRPC: Allow changing of the TCP timeout parameters on the fly") Signed-off-by: Li Lingfeng <lilingfeng3@huawei.com> Signed-off-by: Liu Jian <liujian56@huawei.com> Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com> Signed-off-by: Sasha Levin <sashal@kernel.org> CVE-2024-56688 Signed-off-by: Koichiro Den <koichiro.den@canonical.com> Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
1 parent 1e48b57 commit 6f2cfaf

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

net/sunrpc/xprtsock.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1187,6 +1187,7 @@ static void xs_sock_reset_state_flags(struct rpc_xprt *xprt)
11871187
clear_bit(XPRT_SOCK_WAKE_WRITE, &transport->sock_state);
11881188
clear_bit(XPRT_SOCK_WAKE_DISCONNECT, &transport->sock_state);
11891189
clear_bit(XPRT_SOCK_NOSPACE, &transport->sock_state);
1190+
clear_bit(XPRT_SOCK_UPD_TIMEOUT, &transport->sock_state);
11901191
}
11911192

11921193
static void xs_run_error_worker(struct sock_xprt *transport, unsigned int nr)

0 commit comments

Comments
 (0)