From: Zhengchao Shao Date: Wed, 5 Jul 2023 12:15:27 +0000 (+0800) Subject: net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx X-Git-Tag: Ubuntu-6.2.0-39.40~591 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=1d5a6e307346acc4fb727e1542037200d012c19c;p=mirror_ubuntu-kernels.git net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx BugLink: https://bugs.launchpad.net/bugs/2038236 [ Upstream commit 5dd77585dd9d0e03dd1bceb95f0269a7eaf6b936 ] when mlx5_cmd_exec failed in mlx5dr_cmd_create_reformat_ctx, the memory pointed by 'in' is not released, which will cause memory leak. Move memory release after mlx5_cmd_exec. Fixes: 1d9186476e12 ("net/mlx5: DR, Add direct rule command utilities") Signed-off-by: Zhengchao Shao Reviewed-by: Leon Romanovsky Signed-off-by: Saeed Mahameed Signed-off-by: Sasha Levin Signed-off-by: Kamal Mostafa Signed-off-by: Stefan Bader --- diff --git a/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.c b/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.c index 7fbad87f475d..14025470ca8f 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.c @@ -545,11 +545,12 @@ int mlx5dr_cmd_create_reformat_ctx(struct mlx5_core_dev *mdev, err = mlx5_cmd_exec(mdev, in, inlen, out, sizeof(out)); if (err) - return err; + goto err_free_in; *reformat_id = MLX5_GET(alloc_packet_reformat_context_out, out, packet_reformat_id); - kvfree(in); +err_free_in: + kvfree(in); return err; }