Recent patch fixed the RSS action validation, making sure hairpin queues and standard queues are not used together in the same RSS action. The variable used for comparison was declared and initialized within the check loop, making the queue type comparison wrong.
This patch moves the variable declaration to the start of the function, outside of the check loop. Fixes: cb8a079aee5d ("net/mlx5: fix validate RSS queues types") Signed-off-by: Dekel Peled <dek...@nvidia.com> Acked-by: Ori Kam <or...@nvidia.com> Acked-by: Jack Min <jack...@nvidia.com> --- drivers/net/mlx5/mlx5_flow.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c index 33dbbd9eef..236610c8fc 100644 --- a/drivers/net/mlx5/mlx5_flow.c +++ b/drivers/net/mlx5/mlx5_flow.c @@ -1411,6 +1411,7 @@ mlx5_validate_action_rss(struct rte_eth_dev *dev, { struct mlx5_priv *priv = dev->data->dev_private; const struct rte_flow_action_rss *rss = action->conf; + enum mlx5_rxq_type rxq_type = MLX5_RXQ_TYPE_UNDEFINED; unsigned int i; if (rss->func != RTE_ETH_HASH_FUNCTION_DEFAULT && @@ -1476,7 +1477,6 @@ mlx5_validate_action_rss(struct rte_eth_dev *dev, RTE_FLOW_ERROR_TYPE_ACTION_CONF, NULL, "No queues configured"); for (i = 0; i != rss->queue_num; ++i) { - enum mlx5_rxq_type rxq_type = MLX5_RXQ_TYPE_UNDEFINED; struct mlx5_rxq_ctrl *rxq_ctrl; if (rss->queue[i] >= priv->rxqs_n) -- 2.25.1