Commit 34b3be18 authored by Navid Emamdoost's avatar Navid Emamdoost Committed by Jason Gunthorpe

RDMA/hfi1: Prevent memory leak in sdma_init

In sdma_init if rhashtable_init fails the allocated memory for
tmp_sdma_rht should be released.

Fixes: 5a52a7ac ("IB/hfi1: NULL pointer dereference when freeing rhashtable")
Link: https://lore.kernel.org/r/20190925144543.10141-1-navid.emamdoost@gmail.comSigned-off-by: default avatarNavid Emamdoost <navid.emamdoost@gmail.com>
Acked-by: default avatarDennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: default avatarJason Gunthorpe <jgg@mellanox.com>
parent 390d3fdc
...@@ -1526,8 +1526,11 @@ int sdma_init(struct hfi1_devdata *dd, u8 port) ...@@ -1526,8 +1526,11 @@ int sdma_init(struct hfi1_devdata *dd, u8 port)
} }
ret = rhashtable_init(tmp_sdma_rht, &sdma_rht_params); ret = rhashtable_init(tmp_sdma_rht, &sdma_rht_params);
if (ret < 0) if (ret < 0) {
kfree(tmp_sdma_rht);
goto bail; goto bail;
}
dd->sdma_rht = tmp_sdma_rht; dd->sdma_rht = tmp_sdma_rht;
dd_dev_info(dd, "SDMA num_sdma: %u\n", dd->num_sdma); dd_dev_info(dd, "SDMA num_sdma: %u\n", dd->num_sdma);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment