Bug ID 1754
Summary [dpdk-25.07-rc3]tso/test_tso_tunneling: Nvgre RX or TX packet number not correct
Product DPDK
Version 25.03
Hardware All
OS All
Status UNCONFIRMED
Severity normal
Priority Normal
Component testpmd
Assignee dev@dpdk.org
Reporter yex.chen@intel.com
Target Milestone ---

Environment
===========
DPDK version: 9fe9c0b231c8da5435bfccb1963121b4277f961c version: dpdk25.07-rc3
OS: Fedora42/6.14.5-300.fc42.x86_64
Compiler: gcc version 15.1.1 20250425
Hardware platform: Intel(R) Xeon(R) Gold 6252N CPU @ 2.30GHz
NIC hardware: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ (rev
01)
NIC firmware: 
  driver: vfio-pci
  kdriver: i40e-2.28.7
  firmware-version: 9.54 0x8000fb3f 1.3800.0

Test Setup
Steps to reproduce
==================
1. dut start testpmd
usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:31:00.0 0000:31:00.1
x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -l 1-2 -n 4 -a 0000:31:00.0 -a
0000:31:00.1  --file-prefix=dpdk_268618_20250714132702    
--force-max-simd-bitwidth=64   -- -i --rxd=512 --txd=512 --burst=32
--rxfreet=64 --mbcache=128 --portmask=0x3 --max-pkt-len=9000 --txpt=36 --txht=0
--txwt=0 --txfreet=32 --txrst=32

testpmd> set verbose 1
testpmd> port stop all
testpmd> csum set ip hw 0
testpmd> csum set udp hw 0
testpmd> csum set tcp hw 0
testpmd> csum set sctp hw 0
testpmd> csum set outer-ip hw 0
testpmd> csum parse-tunnel on 0
testpmd> csum set ip hw 1
testpmd> csum set udp hw 1
testpmd> csum set tcp hw 1
testpmd> csum set sctp hw 1
testpmd> csum set outer-ip hw 1
testpmd> csum parse-tunnel on 1
testpmd> tunnel_tso set 800 1
testpmd> rx_vxlan_port add 4789 0
testpmd> set fwd csum
testpmd> port start all
testpmd> set promisc all off
testpmd> start

2. start tester tcpdump to save the capture packet
tcpdump -w /tmp/tcpdump_ens9f1.pcap -i ens9f1 2>tcpdump_ens9f1.out & 

3. start tester scapy send pkt
scapy
>>>
>>> sendp([Ether(dst="3c:fd:fe:c0:e1:d8",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2",proto=47)/GRE(key_present=1,proto=0x6558,key=0x00001000)/Ether(dst="3c:fd:fe:c0:e1:d8",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*128)],
>>> iface="ens9f0")

4. kill tester tcpdump
killall tcpdump

5. tester check packet number
tcpdump  -vv -r /tmp/tcpdump_ens9f1.pcap 2>/dev/null | grep "seq"  | grep
"length"

Results: 
========
length 10708

Expected Result:
================
length 128

bad commit:
===========
commit: a5854045c38865c44459446565dc749aa29dffba

Author: Dengdui Huang <huangdengdui@huawei.com>
Date:   Mon Jun 16 16:27:01 2025 +0800



    net: add tunnel length in UDP tunnel parsing

    Currently, the tunnel length info is not available when
    get the tunnel packet type with UDP port. This patch
    adds the parsing of the tunnel length info.

    Additionally, adding comments for the inner_l2_len field
    and the tunnel_len field would help in understanding their.

    Fixes: 64ed7f854cf4 ("net: add tunnel packet type parsing")
    Cc: stable@dpdk.org

    Signed-off-by: Dengdui Huang <huangdengdui@huawei.com>
          


You are receiving this mail because: