Skip to content

Commit 17ba1fa

Browse files
zhengchaoshaoBrian Maly
authored andcommitted
net/mlx5: fix potential memory leak in mlx5e_init_rep_rx
The memory pointed to by the priv->rx_res pointer is not freed in the error path of mlx5e_init_rep_rx, which can lead to a memory leak. Fix by freeing the memory in the error path, thereby making the error path identical to mlx5e_cleanup_rep_rx(). Fixes: af8bbf7 ("net/mlx5e: Convert mlx5e_flow_steering member of mlx5e_priv to pointer") Signed-off-by: Zhengchao Shao <[email protected]> Reviewed-by: Simon Horman <[email protected]> Reviewed-by: Tariq Toukan <[email protected]> Signed-off-by: Saeed Mahameed <[email protected]> Orabug: 35622106 (cherry picked from commit c6cf0b6) cherry-pick-repo=kernel/git/torvalds/linux.git unmodified-from-upstream: c6cf0b6 Signed-off-by: Mikhael Goikhman <[email protected]> Signed-off-by: Qing Huang <[email protected]> Reviewed-by: Devesh Sharma <[email protected]> Signed-off-by: Brian Maly <[email protected]>
1 parent 597a1ca commit 17ba1fa

File tree

1 file changed

+2
-1
lines changed
  • drivers/net/ethernet/mellanox/mlx5/core

1 file changed

+2
-1
lines changed

drivers/net/ethernet/mellanox/mlx5/core/en_rep.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1040,7 +1040,7 @@ static int mlx5e_init_rep_rx(struct mlx5e_priv *priv)
10401040
err = mlx5e_open_drop_rq(priv, &priv->drop_rq);
10411041
if (err) {
10421042
mlx5_core_err(mdev, "open drop rq failed, %d\n", err);
1043-
return err;
1043+
goto err_rx_res_free;
10441044
}
10451045

10461046
err = mlx5e_rx_res_init(priv->rx_res, priv->mdev, 0,
@@ -1074,6 +1074,7 @@ static int mlx5e_init_rep_rx(struct mlx5e_priv *priv)
10741074
mlx5e_rx_res_destroy(priv->rx_res);
10751075
err_close_drop_rq:
10761076
mlx5e_close_drop_rq(&priv->drop_rq);
1077+
err_rx_res_free:
10771078
mlx5e_rx_res_free(priv->rx_res);
10781079
priv->rx_res = NULL;
10791080
err_free_fs:

0 commit comments

Comments
 (0)