Hello David,

Can we first understand what you would like to achieve?
Accordingly, we can suggest a way to do so.

Regards,
Asaf Penso

>-----Original Message-----
>From: David Vodak <vo...@cesnet.cz>
>Sent: Tuesday, September 13, 2022 5:29 PM
>To: Matan Azrad <ma...@nvidia.com>; Slava Ovsiienko
><viachesl...@nvidia.com>
>Cc: dev@dpdk.org
>Subject: Egress RTE flow rule rule with mark in matching pattern on mlx5
>
>Hello,
>
>I am trying to offload egress flow rule with mark in the matching
>pattern to nvidia NICs ConnectX-5 and ConnectX-6, but I keep getting the
>same results. I am using DPDK 21.11.1.
>
>If I try to offload this rule to mlx5 NIC, without any device arguments,
>it says that I need to enable extended metadata feature:
>
>
># dpdk-testpmd -a 65:00.0 -- -i
>EAL: Detected CPU lcores: 40
>EAL: Detected NUMA nodes: 1
>EAL: Detected shared linkage of DPDK
>EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
>EAL: Selected IOVA mode 'PA'
>EAL: No free 1048576 kB hugepages reported on node 0
>EAL: No available 1048576 kB hugepages reported
>EAL: Probe PCI driver: mlx5_pci (15b3:1017) device: 0000:65:00.0 (socket 0)
>TELEMETRY: No legacy callbacks, legacy socket not created
>Interactive-mode selected
>testpmd: create a new mbuf pool <mb_pool_0>: n=459456, size=2176,
>socket=0
>testpmd: preferred mempool ops selected: ring_mp_mc
>
>Warning! port-topology=paired and odd forward ports number, the last
>port will pair with itself.
>
>Configuring Port 0 (socket 0)
>Port 0: 1C:34:DA:41:66:1C
>Checking link statuses...
>Done
>testpmd> flow create 0 egress group 0 pattern eth / mark id spec 4 id
>mask 4 / end actions set_mac_dst mac_addr FE:FE:CA:FE:FE:FE / end
>port_flow_complain(): Caught PMD error type 13 (specific pattern item):
>cause: 0x7ffc030aa198, extended metadata feature isn't enabled:
>Operation not supported
>
>
>If I try to run testpmd with dv_xmeta_en set to 1 or 2, I can only
>create that rule in group that does not equal 0. But I cannot offload a
>rule which contains JUMP action, so I cannot jump to group, where the
>rule with mark in the matching pattern can be offloaded.
>
>
># dpdk-testpmd -a 65:00.0,dv_xmeta_en=1 -- -i
>EAL: Detected CPU lcores: 40
>EAL: Detected NUMA nodes: 1
>EAL: Detected shared linkage of DPDK
>EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
>EAL: Selected IOVA mode 'PA'
>EAL: No free 1048576 kB hugepages reported on node 0
>EAL: No available 1048576 kB hugepages reported
>EAL: Probe PCI driver: mlx5_pci (15b3:1017) device: 0000:65:00.0 (socket 0)
>TELEMETRY: No legacy callbacks, legacy socket not created
>Interactive-mode selected
>testpmd: create a new mbuf pool <mb_pool_0>: n=459456, size=2176,
>socket=0
>testpmd: preferred mempool ops selected: ring_mp_mc
>
>Warning! port-topology=paired and odd forward ports number, the last
>port will pair with itself.
>
>Configuring Port 0 (socket 0)
>Port 0: 1C:34:DA:41:66:1C
>Checking link statuses...
>Done
>testpmd> flow create 0 egress group 0 pattern eth / mark id spec 4 id
>mask 4 / end actions set_mac_dst mac_addr FE:FE:CA:FE:FE:FE / end
>port_flow_complain(): Caught PMD error type 1 (cause unspecified):
>cannot create modification action: Cannot allocate memory
>testpmd> flow create 0 egress group 1 pattern eth / mark id spec 4 id
>mask 4 / end actions set_mac_dst mac_addr FE:FE:CA:FE:FE:FE / end
>Flow rule #0 created
>testpmd> flow create 0 egress pattern eth / end actions jump group 1 / end
>port_flow_complain(): Caught PMD error type 1 (cause unspecified):
>cannot create modification action: Cannot allocate memory
>
>
>Is there any way how can I work this out or do I need to start using
>similar pattern items such as meta?
>
>Thank you,
>
>David

Reply via email to