From: Weihang Li Date: Thu, 12 Nov 2020 11:29:42 +0000 (+0800) Subject: RDMA/hns: Fix double free of the pointer to TSQ/TPQ X-Git-Tag: accepted/tizen/unified/20230118.172025~8259^2~87 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7af80c02c7b3cf7ac580a33f15d155730574769f;p=platform%2Fkernel%2Flinux-rpi.git RDMA/hns: Fix double free of the pointer to TSQ/TPQ A return statement is omitted after getting HEM table, then the newly allocated pointer will be freed directly, which will cause a calltrace when the driver was removed. Fixes: d6d91e46210f ("RDMA/hns: Add support for configuring GMV table") Link: https://lore.kernel.org/r/1605180582-46504-1-git-send-email-liweihang@huawei.com Signed-off-by: Weihang Li Signed-off-by: Jason Gunthorpe --- diff --git a/drivers/infiniband/hw/hns/hns_roce_hw_v2.c b/drivers/infiniband/hw/hns/hns_roce_hw_v2.c index 83842cd..4d697e4 100644 --- a/drivers/infiniband/hw/hns/hns_roce_hw_v2.c +++ b/drivers/infiniband/hw/hns/hns_roce_hw_v2.c @@ -2582,6 +2582,8 @@ static int hns_roce_v2_init(struct hns_roce_dev *hr_dev) if (ret) goto err_get_hem_table_failed; + return 0; + err_get_hem_table_failed: hns_roce_free_link_table(hr_dev, &priv->tpq);