[dpdk-dev] [Bug 797] [dpdk-21.11]Segmentation fault when start txonly packet forward after set txpkts=40, 64 and txsplit=rand

bugzilla at dpdk.org bugzilla at dpdk.org
Fri Aug 27 03:47:36 CEST 2021


https://bugs.dpdk.org/show_bug.cgi?id=797

            Bug ID: 797
           Summary: [dpdk-21.11]Segmentation fault when start txonly
                    packet forward after set txpkts=40,64 and txsplit=rand
           Product: DPDK
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: testpmd
          Assignee: dev at dpdk.org
          Reporter: yux.jiang at intel.com
  Target Milestone: ---

Environment
DPDK version: 
commit fdab8f2e17493192d555cd88cf28b06269174326 (HEAD, origin/main)
Author: Thomas Monjalon <thomas at monjalon.net>
Date:   Sun Aug 8 21:26:58 2021 +0200    version: 21.11-rc0    Start a new
release cycle with empty release notes.    The ABI version becomes 22.0.
    The map files are updated to the new ABI major number (22).
    The ABI exceptions are dropped and CI ABI checks are disabled because
    compatibility is not preserved.    Signed-off-by: Thomas Monjalon
<thomas at monjalon.net>
    Acked-by: Ferruh Yigit <ferruh.yigit at intel.com>
    Acked-by: David Marchand <david.marchand at redhat.com>
Other software versions: 
OS: PRETTY_NAME="Fedora 34 (Server Edition)"/5.12.14-300.fc34.x86_64
Compiler: gcc version 11.1.1 20210531 (Red Hat 11.1.1-3) 
Hardware platform: Intel(R) Xeon(R) Gold 6252N CPU @ 2.30GHz
NIC hardware: Ethernet Controller X710 for 10GbE SFP+ 1572
NIC firmware: 
[root at fedora dpdk]# ethtool -i enp217s0f0
driver: i40e
version: 2.15.9
firmware-version: 8.30 0x8000a49d 1.2926.0

Test Setup
# Build dpdk
rm -rf x86_64-native-linuxapp-gccCC=gcc meson --werror -Denable_kmods=True 
-Dbuildtype=debug -Dlibdir=lib --default-library=static
x86_64-native-linuxapp-gccninja -C x86_64-native-linuxapp-gcc -j 40
# bind nic to vfio-pci and start testpmd
./usertools/dpdk-devbind.py -b vfio-pci d9:00.0 d9:00.1
x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -l 1,2,3,4 -n 4
--file-prefix=dpdk_339481_20210823205202   -- -i
# Set txpkts and txsplit and start
testpmd> set fwd txonly
Set txonly packet forwarding mode
testpmd> set txpkts 40,64
testpmd> set txsplit rand
testpmd> start
testpmd> 

Show the output from the previous commands.
testpmd> start
txonly packet forwarding - ports=2 - cores=1 - streams=2 - NUMA support
enabled, MP allocation mode: native
Logical Core 2 (socket 0) forwards packets on 2 streams:
  RX P=0/Q=0 (socket 1) -> TX P=1/Q=0 (socket 1) peer=02:00:00:00:00:01
  RX P=1/Q=0 (socket 1) -> TX P=0/Q=0 (socket 1) peer=02:00:00:00:00:00  txonly
packet forwarding packets/burst=32
  packet len=104 - nb packet segments=2
  nb forwarding cores=1 - nb forwarding ports=2
  port 0: RX queue number: 1 Tx queue number: 1
    Rx offloads=0x0 Tx offloads=0x10000
    RX queue: 0
      RX desc=256 - RX free threshold=32
      RX threshold registers: pthresh=0 hthresh=0  wthresh=0
      RX Offloads=0x0
    TX queue: 0
      TX desc=256 - TX free threshold=32
      TX threshold registers: pthresh=32 hthresh=0  wthresh=0
      TX offloads=0x10000 - TX RS bit threshold=32
  port 1: RX queue number: 1 Tx queue number: 1
    Rx offloads=0x0 Tx offloads=0x10000
    RX queue: 0
      RX desc=256 - RX free threshold=32
      RX threshold registers: pthresh=0 hthresh=0  wthresh=0
      RX Offloads=0x0
    TX queue: 0
      TX desc=256 - TX free threshold=32
      TX threshold registers: pthresh=32 hthresh=0  wthresh=0
      TX offloads=0x10000 - TX RS bit threshold=32
testpmd> Segmentation fault (core dumped)
[root at fedora dpdk]#

Expected Result
No any core dumped

Regression
Is this issue a regression: (Y/N) N
First test with such cmd

Stack Trace or Log
# if set txsplit on, there is no core dumped.
# gdb ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd
./core-lcore-worker-2-46341-1629784290
warning: Unable to find libthread_db matching inferior's thread library, thread
debugging will not be available.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1,2,3,4
-n 4 --file-prefix=dpdk_'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00000000005fbbc6 in copy_buf_to_pkt_segs (buf=0x3de3e3e <pkt_udp_hdr+6>,
len=2, pkt=0x166c5e400, offset=34) at ../app/test-pmd/txonly.c:86
86                      seg_buf = rte_pktmbuf_mtod(seg, char *);
[Current thread is 1 (Thread 0x7f47712a0400 (LWP 46344))]
Missing separate debuginfos, use: dnf debuginfo-install
elfutils-libelf-0.185-2.fc34.x86_64 glibc-2.33-5.fc34.x86_64
jansson-2.13.1-2.fc34.x86_64 libfdt-1.6.1-1.fc34.x86_64
libibverbs-34.0-3.fc34.x86_64 libnl3-3.5.0-6.fc34.x86_64
libpcap-1.10.1-1.fc34.x86_64 numactl-libs-2.0.14-3.fc34.x86_64
openssl-libs-1.1.1k-1.fc34.x86_64 zlib-1.2.11-26.fc34.x86_64
(gdb) bt
#0  0x00000000005fbbc6 in copy_buf_to_pkt_segs (buf=0x3de3e3e <pkt_udp_hdr+6>,
len=2, pkt=0x166c5e400, offset=34) at ../app/test-pmd/txonly.c:86
#1  0x00000000005fe51c in copy_buf_to_pkt (buf=0x3de3e38 <pkt_udp_hdr>, len=8,
pkt=0x166c5e400, offset=34) at ../app/test-pmd/txonly.c:100
#2  0x00000000005ff51b in pkt_burst_prepare (pkt=0x166c5e400, mbp=0x17f0f0180,
eth_hdr=0x7f477129b182, vlan_tci=0, vlan_tci_outer=0, ol_flags=0, idx=1,
fs=0x166bbb4c0) at ../app/test-pmd/txonly.c:251
#3  0x000000000060043f in pkt_burst_transmit (fs=0x166bbb4c0) at
../app/test-pmd/txonly.c:372
#4  0x00000000005f0362 in run_pkt_fwd_on_lcore (fc=0x17fb3adc0,
pkt_fwd=0x5ff7eb <pkt_burst_transmit>) at ../app/test-pmd/testpmd.c:2049
#5  0x00000000005f0452 in start_pkt_forward_on_core (fwd_arg=0x17fb3adc0) at
../app/test-pmd/testpmd.c:2075
#6  0x0000000000aa8910 in eal_thread_loop (arg=0x0) at
../lib/eal/linux/eal_thread.c:127
#7  0x00007f477254f299 in start_thread () from /lib64/libpthread.so.0
#8  0x00007f47724776a3 in clone () from /lib64/libc.so.6
(gdb)

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the dev mailing list