[PATCH] net/mlx5: fix using wrong group ID for action translation

Maayan Kashani mkashani at nvidia.com
Mon Mar 3 14:49:20 CET 2025


From: Bing Zhao <bingz at nvidia.com>

In HWS non-template API, the actual group ID is calculated in the
flow_hw_translate_flow_actions(). This would be set into the dummy
template table for the following usage.

Since __flow_hw_translate_actions_template() is also called for the
dummy action template and some fixed actions' translation. The actual
group ID is also needed to avoid the misuse of actions for 'root'
table. Only the 'group' in the attributes can be used in this
function. The actual group should be set explicitly before calling
it in the non-template API.

Fixes: 27d171b88031 ("net/mlx5: abstract flow action and enable reconfigure")
Cc: stable at dpdk.org

Signed-off-by: Bing Zhao <bingz at nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnowski at nvidia.com>
---
 drivers/net/mlx5/mlx5_flow_hw.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/mlx5/mlx5_flow_hw.c b/drivers/net/mlx5/mlx5_flow_hw.c
index 03cbf53f492..93e71192552 100644
--- a/drivers/net/mlx5/mlx5_flow_hw.c
+++ b/drivers/net/mlx5/mlx5_flow_hw.c
@@ -13825,6 +13825,7 @@ flow_hw_translate_flow_actions(struct rte_eth_dev *dev,
 	table->cfg.external = external;
 	table->nb_action_templates = 1;
 	memcpy(&table->cfg.attr.flow_attr, attr, sizeof(*attr));
+	table->cfg.attr.flow_attr.group = src_group;
 	table->ats[0].action_template = at;
 	ret = __flow_hw_translate_actions_template(dev, &table->cfg, hw_acts, at,
 						   &table->mpctx, true, error);
-- 
2.21.0



More information about the dev mailing list