RDMA/hns: Fix double free of the pointer to TSQ/TPQ
authorWeihang Li <liweihang@huawei.com>
Thu, 12 Nov 2020 11:29:42 +0000 (19:29 +0800)
committerJason Gunthorpe <jgg@nvidia.com>
Thu, 12 Nov 2020 17:33:44 +0000 (13:33 -0400)
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 <liweihang@huawei.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/hns/hns_roce_hw_v2.c

index 83842cd..4d697e4 100644 (file)
@@ -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);