Xiaoyu Min
7162c02d7b
net/mlx5: fix push VLAN action to use item info
Currently when PMD create push VLAN action it need to provide VID to HW and PMD get VID value from item VLAN in pattern if there is no of_set_vlan_vid action following. When user create rule like [1], which has of_set_vlan_vid action before of_push_vlan, the intention is to modify VID on existing VLAN header and push a new VLAN header with VID _inherit_ from the previous of_set_vlan_vid. Currently the above is not covered by PMD, PMD always fetch the VLAN information from item for of_push_vlan action. Fix it by only fetch VLAN information from item when there is no previous of_set_vlan_vid action. [1]: testpmd> flow create 2 ingress transfer group 1 priority 3 pattern eth / vlan vid is 2731 / ipv4 / end actions of_set_vlan_vid vlan_vid 3209 / of_push_vlan ethertype 0x88A8 / port_id id 1 / end Fixes: b8c0372bc5ac ("net/mlx5: fix set VLAN ID/PCP in new header") Cc: stable@dpdk.org Signed-off-by: Xiaoyu Min <jackmin@mellanox.com> Reviewed-by: Dekel Peled <dekelp@mellanox.com> Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
DPDK is a set of libraries and drivers for fast packet processing. It supports many processor architectures and both FreeBSD and Linux. The DPDK uses the Open Source BSD-3-Clause license for the core libraries and drivers. The kernel components are GPL-2.0 licensed. Please check the doc directory for release notes, API documentation, and sample application information. For questions and usage discussions, subscribe to: users@dpdk.org Report bugs and issues to the development mailing list: dev@dpdk.org
Description
Languages
C
99.1%
Meson
0.5%
Python
0.2%
Shell
0.1%