Commit 5aa2184e authored by Yevgeny Kliteynik's avatar Yevgeny Kliteynik Committed by Paolo Abeni

net/mlx5: HWS, fixed double free in error flow of definer layout

Fix error flow bug that could lead to double free of a buffer
during a failure to calculate a suitable definer layout.

Fixes: 74a778b4 ("net/mlx5: HWS, added definers handling")
Signed-off-by: default avatarYevgeny Kliteynik <kliteyn@nvidia.com>
Reviewed-by: default avatarItamar Gozlan <igozlan@nvidia.com>
Signed-off-by: default avatarTariq Toukan <tariqt@nvidia.com>
Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
parent 65b4eb9f
...@@ -1925,7 +1925,7 @@ mlx5hws_definer_calc_layout(struct mlx5hws_context *ctx, ...@@ -1925,7 +1925,7 @@ mlx5hws_definer_calc_layout(struct mlx5hws_context *ctx,
ret = hws_definer_conv_match_params_to_hl(ctx, mt, match_hl); ret = hws_definer_conv_match_params_to_hl(ctx, mt, match_hl);
if (ret) { if (ret) {
mlx5hws_err(ctx, "Failed to convert items to header layout\n"); mlx5hws_err(ctx, "Failed to convert items to header layout\n");
goto free_fc; goto free_match_hl;
} }
/* Find the match definer layout for header layout match union */ /* Find the match definer layout for header layout match union */
...@@ -1946,7 +1946,7 @@ mlx5hws_definer_calc_layout(struct mlx5hws_context *ctx, ...@@ -1946,7 +1946,7 @@ mlx5hws_definer_calc_layout(struct mlx5hws_context *ctx,
free_fc: free_fc:
kfree(mt->fc); kfree(mt->fc);
free_match_hl:
kfree(match_hl); kfree(match_hl);
return ret; return ret;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment