net/mlx5e: fix memory leak in mlx5e_fs_tt_redirect_any_create
[ Upstream commit 3250affdc658557a41df9c5fb567723e421f8bf2 ]
The memory pointed to by the fs->any pointer is not freed in the error
path of mlx5e_fs_tt_redirect_any_create, which can lead to a memory leak.
Fix by freeing the memory in the error path, thereby making the error path
identical to mlx5e_fs_tt_redirect_any_destroy().
Fixes: 0f575c20bf
("net/mlx5e: Introduce Flow Steering ANY API")
Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
Reviewed-by: Rahul Rameshbabu <rrameshbabu@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
7ca1914cbd
commit
75df2fe6d1
@ -594,7 +594,7 @@ int mlx5e_fs_tt_redirect_any_create(struct mlx5e_flow_steering *fs)
|
||||
|
||||
err = fs_any_create_table(fs);
|
||||
if (err)
|
||||
return err;
|
||||
goto err_free_any;
|
||||
|
||||
err = fs_any_enable(fs);
|
||||
if (err)
|
||||
@ -606,8 +606,8 @@ int mlx5e_fs_tt_redirect_any_create(struct mlx5e_flow_steering *fs)
|
||||
|
||||
err_destroy_table:
|
||||
fs_any_destroy_table(fs_any);
|
||||
|
||||
kfree(fs_any);
|
||||
err_free_any:
|
||||
mlx5e_fs_set_any(fs, NULL);
|
||||
kfree(fs_any);
|
||||
return err;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user