]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
RDMA/hns: Fix Use-After-Free of rsv_qp on HIP08
authorwenglianfa <wenglianfa@huawei.com>
Fri, 6 Sep 2024 09:34:37 +0000 (17:34 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 4 Oct 2024 14:33:11 +0000 (16:33 +0200)
commitdac2723d8bfa9cf5333f477741e6e5fa1ed34645
tree3deced6fcbe53f170afbd8f1031a9a4e7473b4f1
parent812f69426de3db885941ae5b285e4875eb0dc313
RDMA/hns: Fix Use-After-Free of rsv_qp on HIP08

[ Upstream commit fd8489294dd2beefb70f12ec4f6132aeec61a4d0 ]

Currently rsv_qp is freed before ib_unregister_device() is called
on HIP08. During the time interval, users can still dereg MR and
rsv_qp will be used in this process, leading to a UAF. Move the
release of rsv_qp after calling ib_unregister_device() to fix it.

Fixes: 70f92521584f ("RDMA/hns: Use the reserved loopback QPs to free MR before destroying MPT")
Signed-off-by: wenglianfa <wenglianfa@huawei.com>
Signed-off-by: Junxian Huang <huangjunxian6@hisilicon.com>
Link: https://patch.msgid.link/20240906093444.3571619-3-huangjunxian6@hisilicon.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/infiniband/hw/hns/hns_roce_hw_v2.c