From: Bing Zhao <bi...@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: sta...@dpdk.org

Signed-off-by: Bing Zhao <bi...@nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnow...@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

Reply via email to