From: Alexander Kozyrev Date: Tue, 25 May 2021 17:14:14 +0000 (+0300) Subject: net/mlx5: allow copy from one tag to another X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=1fddb5205b9f50dc6efdb9d23d0b0e63a254df39;p=dpdk.git net/mlx5: allow copy from one tag to another The modify field implementation in mlx5 driver has a check to prevent a copy from a field to the same field. But the level is not taken into account which prevents a copy from different tags. Check the level and allow a copy from one tag to another. Fixes: 641dbe4fb05 ("net/mlx5: support modify field flow action") Cc: stable@dpdk.org Signed-off-by: Alexander Kozyrev Acked-by: Viacheslav Ovsiienko --- diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c index c50649a107..acb9af4e61 100644 --- a/drivers/net/mlx5/mlx5_flow_dv.c +++ b/drivers/net/mlx5/mlx5_flow_dv.c @@ -4788,8 +4788,10 @@ flow_dv_validate_action_modify_field(struct rte_eth_dev *dev, "inner header fields modification" " is not supported"); } - if (action_modify_field->dst.field == - action_modify_field->src.field) + if ((action_modify_field->dst.field == + action_modify_field->src.field) && + (action_modify_field->dst.level == + action_modify_field->src.level)) return rte_flow_error_set(error, EINVAL, RTE_FLOW_ERROR_TYPE_ACTION, action, "source and destination fields"