Bug ID 1473
Summary [dpdk-24.07] vxlan/vxlan_ipv6_checksum_offload: IPV6-Vxlan TX droped by outer sw csum
Product DPDK
Version 24.07
Hardware x86
OS Linux
Status UNCONFIRMED
Severity normal
Priority Normal
Component ethdev
Assignee dev@dpdk.org
Reporter zhiminx.huang@intel.com
Target Milestone ---

Environment:
DPDK version: v24.07-rc1: 4a44d97f0a52a76258c6a6cb6a713f4380a8ab1f
OS: Ubuntu 24.04 LTS/6.8.0-31-generic
Compiler: gcc version 13.2.0 
Hardware platform: Intel(R) Xeon(R) Gold 6139 CPU @ 2.30GHz
NIC hardware: Intel Corporation Ethernet Controller XXV710 for 25GbE SFP28
[8086:158b]
NIC firmware: 
i40e: 2.25.7
FW: 9.50 0x8000f167 1.3597.0


Test Setup:
1.
usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:af:00.0

2. 
./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -l 1-5 -n 4 -a 0000:af:00.0  --
-i --enable-rx-cksum

set fwd csum
rx_vxlan_port add 4789 0
port stop all
csum set udp hw 0
csum set tcp hw 0
csum set sctp hw 0
csum parse-tunnel on 0
csum set outer-ip sw 0
port start all
start

3.
scapy:
sendp([Ether(src='00:00:10:00:00:00',
dst='3c:fd:fe:cf:33:74')/IPv6(src='fe80::', dst='fe80::1')/UDP(sport=63,
dport=4789)/VXLAN(vni=1)/Ether(src='00:00:20:00:00:00',
dst='00:00:20:00:00:01')/IP(src='192.168.2.1',
dst='192.168.2.2')/UDP()/Raw(load=b'XXXXXXXXXXXXXXXXXX')],iface="ens2f0",count=1,inter=0,verbose=False)

4.stop testpmd and check the output
Show the output from the previous commands.

 ---------------------- Forward statistics for port 0  ----------------------
  RX-packets: 1              RX-dropped: 0             RX-total: 1
  Bad-ipcsum: 0              Bad-l4csum: 0             Bad-outer-l4csum: 0
  Bad-outer-ipcsum: 0
  TX-packets: 0              TX-dropped: 1             TX-total: 1
  ---------------------------------------------------------------------------- 
+++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++
  RX-packets: 1              RX-dropped: 0             RX-total: 1
  TX-packets: 0              TX-dropped: 1             TX-total: 1
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Expected Result:
no tx-droped

Is this issue a regression: (Y/N) Y

commit 6b5e31f7fbd71675c8f3f6d8c0f74fd1f3a0dff5
Author: David Marchand <david.marchand@redhat.com>
Date:   Thu Apr 18 10:20:19 2024 +0200

    net/i40e: fix outer UDP checksum offload for X710

    According to the X710 datasheet (and confirmed on the field..), X710
    devices do not support outer checksum offload.

    """
    8.4.4.2 Transmit L3 and L4 Integrity Offload

    Tunneling UDP headers and GRE header are not offloaded while the
    X710/XXV710/XL710 leaves their checksum field as is.
    If a checksum is required, software should provide it as well as the inner
    checksum value(s) that are required for the outer checksum.
    """

    Fix Tx offload capabilities according to the hardware.

    X722 may support such offload by setting I40E_TXD_CTX_QW0_L4T_CS_MASK.

    Bugzilla ID: 1406
    Fixes: 8cc79a1636cd ("net/i40e: fix forward outer IPv6 VXLAN")
    Cc: stable@dpdk.org

    Reported-by: Jun Wang <junwang01@cestc.cn>
    Signed-off-by: David Marchand <david.marchand@redhat.com>
    Tested-by: Ali Alnubani <alialnu@nvidia.com>
          


You are receiving this mail because: