lkml.org 
[lkml]   [2019]   [Nov]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.3 022/163] RDMA/hfi1: Prevent memory leak in sdma_init
    Date
    From: Navid Emamdoost <navid.emamdoost@gmail.com>

    [ Upstream commit 34b3be18a04ecdc610aae4c48e5d1b799d8689f6 ]

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

    Fixes: 5a52a7acf7e2 ("IB/hfi1: NULL pointer dereference when freeing rhashtable")
    Link: https://lore.kernel.org/r/20190925144543.10141-1-navid.emamdoost@gmail.com
    Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
    Acked-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
    Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/infiniband/hw/hfi1/sdma.c | 5 ++++-
    1 file changed, 4 insertions(+), 1 deletion(-)

    diff --git a/drivers/infiniband/hw/hfi1/sdma.c b/drivers/infiniband/hw/hfi1/sdma.c
    index 2395fd4233a7e..2ed7bfd5feea6 100644
    --- a/drivers/infiniband/hw/hfi1/sdma.c
    +++ b/drivers/infiniband/hw/hfi1/sdma.c
    @@ -1526,8 +1526,11 @@ int sdma_init(struct hfi1_devdata *dd, u8 port)
    }

    ret = rhashtable_init(tmp_sdma_rht, &sdma_rht_params);
    - if (ret < 0)
    + if (ret < 0) {
    + kfree(tmp_sdma_rht);
    goto bail;
    + }
    +
    dd->sdma_rht = tmp_sdma_rht;

    dd_dev_info(dd, "SDMA num_sdma: %u\n", dd->num_sdma);
    --
    2.20.1


    \
     
     \ /
      Last update: 2019-11-04 23:05    [W:4.384 / U:0.028 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site