Re: [PATCH] IB/mlx5: Fix memory leak in mlx5_ib_create_flow

From: Jason Gunthorpe
Date: Fri Jun 08 2018 - 19:21:28 EST


On Fri, Jun 08, 2018 at 06:11:49PM -0500, Gustavo A. R. Silva wrote:
>
> >> mutex_lock(&dev->flow_db->lock);
> >>@@ -3640,6 +3646,9 @@ static struct ib_flow *mlx5_ib_create_flow(struct ib_qp *qp,
> >> kfree(ucmd);
> >> kfree(handler);
> >> return ERR_PTR(err);
> >>+free_ucmd:
> >>+ kfree(ucmd);
> >>+ return ERR_PTR(err);
> >> }
> >
> >This hunk is a bit wonky, can we do this instead? handle never needs
> >to be freed.
> >
> >destroy_ft:
> > put_flow_table(dev, ft_prio, false);
> > if (ft_prio_tx)
> > put_flow_table(dev, ft_prio_tx, false);
> >unlock:
> > mutex_unlock(&dev->flow_db->lock);
> > kfree(dst);
> >free_ucmd:
> > kfree(ucmd);
> > return ERR_PTR(err);
> >}
> >
> >
>
> Sure thing. I'll send v2 shortly.

I made the adjustment for you, if it is wrong let me know..

https://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git/commit/?h=wip/jgg-for-rc&id=2cc82dd58712888758c2d2b405d012f2cd580dd7

Jason