Comment 0 for bug 1963926

Revision history for this message
Amir Tzin (amirtz) wrote : mlx5: steering, Add support for non FDB domain

[Impact]
Although focal kernel supports non FDB domains, rdma-core support is missing.
we need the below rdma-core patches to add this support

[Test Case]
install latest DPDK from github
$ git clone git://dpdk.org/dpdk
$ cd <dpdk download folder>
$ mason build
$ ninja -C build

- Run testpmd

/download/dpdk/build-meson/app/dpdk-testpmd -n 4 -a 0000:00:06.0,l3_vxlan_en=1,dv_flow_en=1 -a 0000:00:07.0,l3_vxlan_en=1,dv_flow_en=1 -- --mbcache=512 -i --nb-cores=11 --txd=256 --rxd=256 --burst=64 --mask-event=intr_lsc --mask-event=flow_aged --vxlan-gpe-port=6081

- Try to create any SW Steering rule "group > 0 "

 testpmd> flow create 0 priority 3 ingress group 0 pattern eth / end actions jump group 34 / end

port_flow_complain(): Caught PMD error type 16 (specific action): cannot create jump action.: Operation not supported

testpmd>flow create 0 priority 0 egress group 106 pattern eth dst spec 00:16:3e:68:61:b6 dst prefix 32 src spec 00:16:3e:01:73:ac src mask FF:FF:FF:FF:FF:00 type is 33024 has_vlan spec 1 has_vlan prefix 1 / vlan has_more_vlan spec 0 has_more_vlan mask 1 / ipv4 tos spec 228 tos mask 0xff ttl spec 144 ttl prefix 3 / tcp flags spec 228 flags mask 0x00 / end actions set_ipv4_src ipv4_addr 73.93.224.47 / set_ipv4_dst ipv4_addr 53.230.88.14 / set_tp_src port 58291 / inc_tcp_seq value 3623434402 / raw_decap index 0 / raw_encap index 0 / count / end

port_flow_complain(): Caught PMD error type 16 (specific action): can't create encap action: Invalid argument

testpmd>flow create 0 priority 0 ingress group 20 pattern eth dst is 00:16:3e:26:e2:0f src spec 00:16:3e:49:cf:16 src mask FF:FF:FF:FF:FF:00 type spec 2048 type prefix 16 has_vlan spec 0 has_vlan mask 1 / ipv4 dst is 211.147.138.110 proto spec 1 proto prefix 0 tos spec 18 tos mask 0xf0 ttl is 211 / icmp type spec 18 type prefix 1 ident spec 4790 ident prefix 8 seq spec 4790 seq prefix 1 / end actions mark id 6169568 / set_ipv4_src ipv4_addr 169.127.92.45 / set_mac_src mac_addr 00:16:3e:6d:da:4a / rss queues 0 3 0 3 5 end types ipv6 ipv6-udp-ex ip end / end

port_flow_complain(): Caught PMD error type 1 (cause unspecified): cannot create modification action: Cannot allocate memory

testpmd>flow create 0 priority 0 ingress group 1 pattern eth dst is 00:16:3e:4e:67:1f src spec 00:16:3e:34:4b:71 src prefix 0 type is 33024 / vlan vid is 2989 has_more_vlan spec 0 has_more_vlan prefix 1 / ipv6 src spec ::3496 src prefix 96 dst spec ::bad0 dst prefix 128 has_frag_ext spec 0 has_frag_ext mask 1 / end actions drop / end

port_flow_complain(): Caught PMD error type 1 (cause unspecified): cannot get table: Cannot allocate memory

[Regression Potential]
TBD

[Other Info]

Feature patchset:
userspace (rdma-core-31):
6724f653 mlx5: DR, Query RoCE capabilities
244015c4 mlx5: DR, Enable SW Steering RX/TX domains

both patches cleanly applied on debian/28.1 branch