https://bugs.dpdk.org/show_bug.cgi?id=1253 Bug ID: 1253 Summary: [dpdk-23.07] vf_offload/test_tso_tunnel: IPv6/UDP/GTPU packet of iavf cannot be forwarded in 32bit Product: DPDK Version: 23.07 Hardware: All OS: All Status: UNCONFIRMED Severity: normal Priority: Normal Component: testpmd Assignee: dev@dpdk.org Reporter: linglix.chen@intel.com Target Milestone: --- Environment OS: Ubuntu 22.04.2 LTS/5.15.0-70-generic DPDK version: dpdk-23.07-rc1: 050de60d8a5cef8b7c10b4471905ca8bf69d670e Compiler: gcc version 11.3.0 NIC hardware: Ethernet Controller E810-XXV for SFP 159b NIC driver: ice-1.12.0_rc135_1_g7290fc452_dirty NIC firmware: 4.30 0x80019922 1.3403.0 ddp: ice comms 1.3.45.0 Test Setup 1.Bind the iavf port to dpdk driver echo 1 > /sys/bus/pci/devices/0000\:31\:00.0/sriov_numvfs echo 1 > /sys/bus/pci/devices/0000\:31\:00.1/sriov_numvfs ip link set ens5f0 vf 0 spoofchk off ip link set ens5f1 vf 0 spoofchk off ./usertools/dpdk-devbind.py -b vfio-pci 0000:31:01.0 0000:31:11.0 2.build dpdk export CFLAGS=-m32 export PKG_CONFIG_LIBDIR=/usr/lib/i386-linux-gnu/pkgconfig/ CC=gcc meson -Denable_kmods=True -Dlibdir=lib --default-library=static i686-native-linuxapp-gcc ninja -C i686-native-linuxapp-gcc 3.launch testpmd i686-native-linuxapp-gcc/app/dpdk-testpmd -l 0-7 -n 1 -- -i --portmask=0x3 --enable-rx-cksum --max-pkt-len=9000 set fwd csum set promisc 0 on set promisc 1 on csum mac-swap off 0 csum mac-swap off 1 port stop 0 csum set ip hw 0 csum set udp hw 0 csum set tcp hw 0 csum set sctp hw 0 csum set outer-ip hw 0 csum set outer-udp hw 0 csum parse-tunnel on 0 tso set 800 0 tunnel_tso set 800 0 port start 0 port stop 1 csum set ip hw 1 csum set udp hw 1 csum set tcp hw 1 csum set sctp hw 1 csum set outer-ip hw 1 csum set outer-udp hw 1 csum parse-tunnel on 1 tso set 800 1 tunnel_tso set 800 1 port start 1 start 4. Send packet on tester ifconfig ens160f0 mtu 9000 sendp([Ether(dst="D6:5B:05:90:7C:E0",src="52:00:00:00:00:00")/IPv6(src = "FE80:0:0:0:200:1FF:FE00:200", dst = "3555:5555:6666:6666:7777:7777:8888:8888") / UDP(dport = 2152) / GTP_U_Header(gtp_type=255, teid=0x123456)/IPv6(src="FE80:0:0:0:200:1FF:FE00:200", dst="3555:5555:6666:6666:7777:7777:8888:8888")/TCP(sport=1021,dport=1021)/Raw(RandString(size=8500))], iface="ens160f0", count=1000) Show the output from the previous commands testpmd> stop Telling cores to stop... Waiting for lcores to finish... ---------------------- Forward statistics for port 0 ---------------------- RX-packets: 1000 RX-dropped: 0 RX-total: 1000 Bad-ipcsum: 0 Bad-l4csum: 0 Bad-outer-l4csum: 0 Bad-outer-ipcsum: 0 TX-packets: 0 TX-dropped: 0 TX-total: 0 ---------------------------------------------------------------------------- ---------------------- Forward statistics for port 1 ---------------------- RX-packets: 0 RX-dropped: 0 RX-total: 0 Bad-ipcsum: 0 Bad-l4csum: 0 Bad-outer-l4csum: 0 Bad-outer-ipcsum: 0 TX-packets: 0 TX-dropped: 11000 TX-total: 11000 ---------------------------------------------------------------------------- +++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++ RX-packets: 1000 RX-dropped: 0 RX-total: 1000 TX-packets: 0 TX-dropped: 11000 TX-total: 11000 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Expected Result testpmd> stop Telling cores to stop... Waiting for lcores to finish... ---------------------- Forward statistics for port 0 ---------------------- RX-packets: 1000 RX-dropped: 0 RX-total: 1000 Bad-ipcsum: 0 Bad-l4csum: 0 Bad-outer-l4csum: 0 Bad-outer-ipcsum: 0 TX-packets: 0 TX-dropped: 0 TX-total: 0 ---------------------------------------------------------------------------- ---------------------- Forward statistics for port 1 ---------------------- RX-packets: 0 RX-dropped: 0 RX-total: 0 Bad-ipcsum: 0 Bad-l4csum: 0 Bad-outer-l4csum: 0 Bad-outer-ipcsum: 0 TX-packets: 11000 TX-dropped: 0 TX-total: 11000 ---------------------------------------------------------------------------- +++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++ RX-packets: 1000 RX-dropped: 0 RX-total: 1000 TX-packets: 11000 TX-dropped: 0 TX-total: 11000 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Regression Is this issue a regression: (Y/N)Y commit dd827fa42a30a9b0aa87a1d5614af83ea32b19e0 Author: Raslan Darawsheh Date: Sun Apr 2 15:26:19 2023 +0300 app/testpmd: fix GTP L2 length in checksum engine GTP header can be followed by an optional 32 bits extension. But, l2_len value statically set to RTE_ETHER_GTP_HLEN which is defined to be (sizeof(struct rte_udp_hdr) + sizeof(struct rte_gtp_hdr)) This fixes the l2_len to take into consideration the extension size. Fixes: d8e5e69f3a9b ("app/testpmd: add GTP parsing and Tx checksum offload") Cc: stable@dpdk.org Signed-off-by: Raslan Darawsheh Acked-by: Aman Singh -- You are receiving this mail because: You are the assignee for the bug.