lkml.org 
[lkml]   [2018]   [Apr]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL for 4.14 087/161] RDMA/mlx5: Avoid memory leak in case of XRCD dealloc failure
    Date
    From: Leon Romanovsky <leonro@mellanox.com>

    [ Upstream commit b081808a66345ba725b77ecd8d759bee874cd937 ]

    Failure in XRCD FW deallocation command leaves memory leaked and
    returns error to the user which he can't do anything about it.

    This patch changes behavior to always free memory and always return
    success to the user.

    Fixes: e126ba97dba9 ("mlx5: Add driver for Mellanox Connect-IB adapters")
    Reviewed-by: Majd Dibbiny <majd@mellanox.com>
    Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
    Reviewed-by: Yuval Shaia <yuval.shaia@oracle.com>
    Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    ---
    drivers/infiniband/hw/mlx5/qp.c | 5 +----
    1 file changed, 1 insertion(+), 4 deletions(-)

    diff --git a/drivers/infiniband/hw/mlx5/qp.c b/drivers/infiniband/hw/mlx5/qp.c
    index c4d8cc1c2b1d..e1978d91a2f7 100644
    --- a/drivers/infiniband/hw/mlx5/qp.c
    +++ b/drivers/infiniband/hw/mlx5/qp.c
    @@ -4636,13 +4636,10 @@ int mlx5_ib_dealloc_xrcd(struct ib_xrcd *xrcd)
    int err;

    err = mlx5_core_xrcd_dealloc(dev->mdev, xrcdn);
    - if (err) {
    + if (err)
    mlx5_ib_warn(dev, "failed to dealloc xrcdn 0x%x\n", xrcdn);
    - return err;
    - }

    kfree(xrcd);
    -
    return 0;
    }

    --
    2.15.1
    \
     
     \ /
      Last update: 2018-04-09 05:11    [W:2.676 / U:0.076 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site