https://bugs.dpdk.org/show_bug.cgi?id=1502 Bug ID: 1502 Summary: [dpdk-24.07] l3fwdacl/l3fwdacl_acl_rule: core dump when receiving packets Product: DPDK Version: 24.07 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: Normal Component: examples Assignee: dev@dpdk.org Reporter: songx.jiale@intel.com Target Milestone: --- [Environment] DPDK version: dpdk24.07-rc3:82c47f005b9a0a1e3a649664b7713443d18abe43 Other software versions: N/A. OS: Anolis OS 8.8/5.10.134-13.an8.x86_64 Compiler: gcc version 8.5.0 20210514 Hardware platform: Intel(R) Xeon(R) Gold 6139 CPU @ 2.30GHz NIC hardware: Intel Corporation Ethernet Controller E810-C for SFP [8086:1593] (rev 01) NIC driver: ice-1.14.11 NIC firmware: 4.50 0x8001d8b6 1.3597.0 [Test Setup] 1.compile dpdk rm -rf x86_64-native-linuxapp-gcc CC=gcc meson -Denable_kmods=True -Dlibdir=lib --default-library=static -Db_sanitize=address -Dexamples=l3fwd x86_64-native-linuxapp-gcc ninja -C x86_64-native-linuxapp-gcc 2. bind pf to vfio-pci ./usertools/dpdk-devbind.py -b vfio-pci 18:00.0 18:00.1 3.prepare acl rules echo '' > /root/rule_ipv4.db echo 'R0.0.0.0/0 0.0.0.0/0 0 : 65535 0 : 65535 0x00/0x00 1' >> /root/rule_ipv4.db echo '' > /root/rule_ipv6.db echo 'R0:0:0:0:0:0:0:0/0 0:0:0:0:0:0:0:0/0 0 : 65535 0 : 65535 0x00/0x00 1' >> /root/rule_ipv6.db echo '' > /root/rule_ipv4.db echo @200.10.0.1/32 0.0.0.0/0 0 : 65535 0 : 65535 0x00/0x00 >> /root/rule_ipv4.db echo R0.0.0.0/0 0.0.0.0/0 0 : 65535 0 : 65535 0x00/0x00 1 >> /root/rule_ipv4.db 4.launch dpdk-l3fwd x86_64-native-linuxapp-gcc/examples/dpdk-l3fwd -l 1-4 -n 4 -a 0000:18:00.0 -a 0000:18:00.1 --force-max-simd-bitwidth=0 -- -p 0x3 --lookup acl --config="(0,0,2),(1,0,3)" --rule_ipv4="/root/rule_ipv4.db" --rule_ipv6="/root/rule_ipv6.db" --parse-ptype 5.Send packets sendp([Ether(dst="{rx_port_mac}")/IP(src="200.10.0.1",dst="100.10.0.1")/UDP(sport=11,dport=101)],iface="ens7",count=1,inter=0,verbose=False) [Show the output from the previous commands.] Segmentation fault [Expected Result] The application can receive and send packages normally. [Regression] Is this issue a regression: (Y/N)Y commit aa7c6077c19bd39b48ac17cd844b91f0dd03319f Author: Konstantin Ananyev Date: Thu May 2 16:28:16 2024 +0100 examples/l3fwd: avoid packets reorder in ACL mode In ACL mode l3fwd first do classify() and send() for ipv4 packets, then the same procedure for ipv6. That might cause packets reordering within one ingress queue. Probably not a big deal, as order within each flow are still preserved, but better to be avoided anyway. Specially considering that in other modes (lpm, fib, em) l3fwd does preserve the order no matter of packet's IP version. This patch aims to make ACL mode to behave in the same manner and preserve packet's order within the same ingress queue. Also these changes allow ACL mode to use common (and hopefully better optimized) send_packets_multi() function at Tx path. Signed-off-by: Konstantin Ananyev examples/l3fwd/l3fwd_acl.c | 125 ++++++++++++++++++++++++-------------- examples/l3fwd/l3fwd_acl_scalar.h | 71 ++++++++++++---------- 2 files changed, 118 insertions, 78 deletions -- You are receiving this mail because: You are the assignee for the bug.