]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
smb: server: let recv_done() consistently call put_recvmsg/smb_direct_disconnect_rdma...
authorStefan Metzmacher <metze@samba.org>
Mon, 4 Aug 2025 12:15:52 +0000 (14:15 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 15 Aug 2025 10:09:03 +0000 (12:09 +0200)
commit66110b35bebca098f3df52c61341e41939c5b726
tree1b66e846419ff223627808a686bfb85b65edd380
parente67aff50476fc49f3af712d6139a1dcb315b7a00
smb: server: let recv_done() consistently call put_recvmsg/smb_direct_disconnect_rdma_connection

[ Upstream commit cfe76fdbb9729c650f3505d9cfb2f70ddda2dbdc ]

We should call put_recvmsg() before smb_direct_disconnect_rdma_connection()
in order to call it before waking up the callers.

In all error cases we should call smb_direct_disconnect_rdma_connection()
in order to avoid stale connections.

Cc: Namjae Jeon <linkinjeon@kernel.org>
Cc: Steve French <smfrench@gmail.com>
Cc: Tom Talpey <tom@talpey.com>
Cc: linux-cifs@vger.kernel.org
Cc: samba-technical@lists.samba.org
Fixes: 0626e6641f6b ("cifsd: add server handler for central processing and tranport layers")
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Acked-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/smb/server/transport_rdma.c