]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
nvmet-rdma: recheck queue state is LIVE in state lock in recv done
authorRuozhu Li <david.li@jaguarmicro.com>
Sun, 16 Feb 2025 12:49:56 +0000 (20:49 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 22 Mar 2025 19:54:19 +0000 (12:54 -0700)
commit1f07456a5a66ce3b28f1523c5ddcd8a1a9713d67
treeb22e0a678a8b7b7419bfd605348b909c0f5f52ae
parentfd903dd301228fb8e011bc303905d5e75ab569e0
nvmet-rdma: recheck queue state is LIVE in state lock in recv done

[ Upstream commit 3988ac1c67e6e84d2feb987d7b36d5791174b3da ]

The queue state checking in nvmet_rdma_recv_done is not in queue state
lock.Queue state can transfer to LIVE in cm establish handler between
state checking and state lock here, cause a silent drop of nvme connect
cmd.
Recheck queue state whether in LIVE state in state lock to prevent this
issue.

Signed-off-by: Ruozhu Li <david.li@jaguarmicro.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/nvme/target/rdma.c