Patch "net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx" has been added to the 5.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     net-mlx5-dr-fix-memory-leak-in-mlx5dr_cmd_create_ref.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 90ef786908d55ed28606d310dc0fcd28d340df43
Author: Zhengchao Shao <shaozhengchao@xxxxxxxxxx>
Date:   Wed Jul 5 20:15:27 2023 +0800

    net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx
    
    [ 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 <shaozhengchao@xxxxxxxxxx>
    Reviewed-by: Leon Romanovsky <leonro@xxxxxxxxxx>
    Signed-off-by: Saeed Mahameed <saeedm@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

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 fd56cae0d54fc..4549840fb91ad 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.c
@@ -425,11 +425,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;
 }
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux