Skip to contentSkip to conversation

net/mlx5/hws: fix invalid memory access in decapl3

PATCH Applied Gregory Etelson 2 participants 2 messages Mar 22, 2024 – Mar 24, 2024 Network drivers

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 net/mlx5/hws: fix invalid memory access in decapl3

From: Alex Vesker <[email protected]>

In case decapL3 action is created we would access header data even in case the SHARED flag is not set, this would lead to an invalid memory access.

Fixes 3a6c50215c07 ("net/mlx5/hws: support multi-pattern")
---
 drivers/net/mlx5/hws/mlx5dr_action.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
drivers/net/mlx5/hws/mlx5dr_action.c +3 -1
index 084d4d606e..562fb5cbb4 100644
@@ -1775,7 +1775,9 @@ mlx5dr_action_handle_tunnel_l3_to_l2(struct mlx5dr_action *action,
 
 	/* Create a full modify header action list in case shared */
 	mlx5dr_action_prepare_decap_l3_actions(hdrs->sz, mh_data, &num_of_actions);
-	mlx5dr_action_prepare_decap_l3_data(hdrs->data, mh_data, num_of_actions);
+
+	if (action->flags & MLX5DR_ACTION_FLAG_SHARED)
+		mlx5dr_action_prepare_decap_l3_data(hdrs->data, mh_data, num_of_actions);
 
 	/* All DecapL3 cases require the same max arg size */
 	arg_obj = mlx5dr_arg_create_modify_header_arg(ctx,
Signature · 1 line
2.39.2