net/mlx5: fix the mirror not work with meter action
Checks
Commit Message
While there's mirror action prior to the meter action in the E-Switch
flow, means that the packets should be duplicated into port firstly,
and then do meter and send to the original destination.
MLX5 PMD will split the above E-Switch flow into two sub flows,
similar as mirror with modify action before.
Fixes: 07627fbf1506 ("net/mlx5: support E-Switch mirroring with modify action")
Cc: stable@dpdk.org
Signed-off-by: Jiawei Wang <jiaweiw@nvidia.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
---
drivers/net/mlx5/mlx5_flow.c | 1 +
1 file changed, 1 insertion(+)
Comments
12/05/2021 08:53, Jiawei Wang:
> While there's mirror action prior to the meter action in the E-Switch
> flow, means that the packets should be duplicated into port firstly,
> and then do meter and send to the original destination.
> MLX5 PMD will split the above E-Switch flow into two sub flows,
> similar as mirror with modify action before.
>
> Fixes: 07627fbf1506 ("net/mlx5: support E-Switch mirroring with modify action")
> Cc: stable@dpdk.org
>
> Signed-off-by: Jiawei Wang <jiaweiw@nvidia.com>
> Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
Applied to next-net-mlx, thanks.
@@ -5125,6 +5125,7 @@ flow_check_match_action(const struct rte_flow_action actions[],
case RTE_FLOW_ACTION_TYPE_NVGRE_DECAP:
case RTE_FLOW_ACTION_TYPE_RAW_DECAP:
case RTE_FLOW_ACTION_TYPE_MODIFY_FIELD:
+ case RTE_FLOW_ACTION_TYPE_METER:
if (fdb_mirror)
*modify_after_mirror = 1;
break;