[dpdk-dev] [Bug 631] [dpdk-21.02] vdev_primary_secondary/Virtio_primary_and_secondary_process: start dpdk-symmetric_mp occur core dumped in vm.

bugzilla at dpdk.org bugzilla at dpdk.org
Mon Feb 1 04:09:23 CET 2021


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

            Bug ID: 631
           Summary: [dpdk-21.02]
                    vdev_primary_secondary/Virtio_primary_and_secondary_pr
                    ocess: start dpdk-symmetric_mp occur core dumped in
                    vm.
           Product: DPDK
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: vhost/virtio
          Assignee: dev at dpdk.org
          Reporter: weix.ling at intel.com
  Target Milestone: ---

DPDK version: Use make showversion or for a non-released version: git remote -v
&& git show-ref --heads
 21.02.0-rc2:3021257a8111d204dc7741bd67a2502efffb6842
Other software versions:  QEMU-3.0.0
OS: Ubuntu 20.04.1 LTS/5.10.0-051000-generic
Compiler: gcc version 9.3.0 (Ubuntu 9.3.0-10ubuntu2)
Hardware platform: Intel(R) Xeon(R) Platinum 8280M CPU @ 2.70GHz
NIC hardware: fortville_spirit.
NIC driver: 5.10.0-051000-generic
NIC firmware: 8.00 0x80008b8a 1.2766.0
Test Setup
Steps to reproduce
List the steps to reproduce the issue.

1.Bind port to vfio-pci

dpdk-devbind.py --force --bind=vfio-pci 0000:af:00.0 0000:af:00.1

2.Start testpmd on vhost

x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -l 1,2,3,4,5,6,7,8,9,10,11,12 -n 4
-a 0000:af:00.0  --file-prefix=vhost_86314_20210131132233   --vdev
'net_vhost0,iface=/root/dpdk/vhost-net0,queues=2,client=1' --vdev
'net_vhost1,iface=/root/dpdk/vhost-net1,queues=2,client=1' -- -i --nb-cores=4
--rxq=2 --txq=2 --txd=1024 --rxd=1024
set fwd txonly
start

3.Start vm

taskset -c 46,47,48,49,50,51,52,53 /home/QEMU/qemu-4.2.1/bin/qemu-system-x86_64
 -name vm0 -enable-kvm -pidfile /tmp/.vm0.pid -daemonize -monitor
unix:/tmp/vm0_monitor.sock,server,nowait -netdev
user,id=nttsip1,hostfwd=tcp:10.240.183.220:6000-:22 -device
e1000,netdev=nttsip1  -chardev
socket,id=char0,path=/root/dpdk/vhost-net0,server -netdev
type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 -device
virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:02,mrg_rxbuf=on,mq=on,vectors=6
-chardev socket,id=char1,path=/root/dpdk/vhost-net1,server -netdev
type=vhost-user,id=netdev1,chardev=char1,vhostforce,queues=2 -device
virtio-net-pci,netdev=netdev1,mac=52:54:00:00:00:03,mrg_rxbuf=on,mq=on,vectors=6
-cpu host -smp 8 -m 8192 -object
memory-backend-file,id=mem,size=8192M,mem-path=/mnt/huge,share=on -numa
node,memdev=mem -mem-prealloc -chardev
socket,path=/tmp/vm0_qga0.sock,server,nowait,id=vm0_qga0 -device virtio-serial
-device virtserialport,chardev=vm0_qga0,name=org.qemu.guest_agent.0 -vnc :4
-drive file=/home/image/ubuntu2004.img

4.Config vm and build dpdk in vm

echo 0 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
echo 1024 >
/sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages
umount `awk '/hugetlbfs/ { print $2 }' /proc/mounts`
awk '/hugetlbfs/ { print $2 }' /proc/mounts
mkdir -p /mnt/huge
mount -t hugetlbfs nodev /mnt/huge
cat /proc/mounts |grep hugetlbfs
rmmod vfio_pci
rmmod vfio_iommu_type1
rmmod vfio
modprobe vfio
modprobe vfio-pci
echo 1 > /sys/module/vfio/parameters/enable_unsafe_noiommu_mode
usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:00:04.0 0000:00:05.0

rm -rf x86_64-native-linuxapp-gcc
CC=gcc meson -Denable_kmods=True -Dlibdir=lib  --default-library=static
x86_64-native-linuxapp-gcc
ninja -C x86_64-native-linuxapp-gcc -j 8

cp ./examples/multi_process/symmetric_mp/main.c .
sed -i '/.offloads = DEV_RX_OFFLOAD_CHECKSUM,/d'
./examples/multi_process/symmetric_mp/main.c
sed -i 's/ETH_MQ_RX_RSS,/ETH_MQ_RX_NONE,/g'
./examples/multi_process/symmetric_mp/main.c
meson configure -Dexamples=multi_process/symmetric_mp
x86_64-native-linuxapp-gcc
ninja -C x86_64-native-linuxapp-gcc


5.Start dpdk-symmetric_mp in vm

x86_64-native-linuxapp-gcc/examples/dpdk-symmetric_mp  -l 0 -n 4
--proc-type=auto -- -p 3 --num-procs=2 --proc-id=0


Show the output from the previous commands.

root at vmubuntu2004:~/dpdk# x86_64-native-linuxapp-gcc/examples/dpdk-symmetric_mp
 -l 0 -n 4 --proc-type=auto -- -p 3 --num-procs=2 --proc-id=0
EAL: Detected 8 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Auto-detected process type: PRIMARY
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: Selected IOVA mode 'PA'
EAL: No available 1048576 kB hugepages reported
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL:   Invalid NUMA socket, default to 0
EAL:   Invalid NUMA socket, default to 0
EAL: Probe PCI driver: net_virtio (1af4:1000) device: 0000:00:04.0 (socket 0)
EAL:   using IOMMU type 8 (No-IOMMU)
EAL: Ignore mapping IO port bar(0)
EAL:   Invalid NUMA socket, default to 0
EAL: Probe PCI driver: net_virtio (1af4:1000) device: 0000:00:05.0 (socket 0)
EAL: Ignore mapping IO port bar(0)
Segmentation fault (core dumped)
Expected Result
Explain what is the expected result in text or as an example output:

# Start dpdk-symmetric_mp in vm normally.
Regression
Is this issue a regression: (Y)

Version the regression was introduced: Specify git id if known.

Bad commit:

commit 512e27eeb7435780cfe6915e17dbf840e0f4df20 (HEAD)
Author: Maxime Coquelin <maxime.coquelin at redhat.com>
Date: Tue Jan 26 11:16:03 2021 +0100

net/virtio: move PCI specific dev init to PCI ethdev init

This patch moves the PCI specific initialization from
eth_virtio_dev_init() to eth_virtio_pci_init().

Signed-off-by: Maxime Coquelin <maxime.coquelin at redhat.com>
Reviewed-by: Chenbo Xia <chenbo.xia at intel.com>
Reviewed-by: David Marchand <david.marchand at redhat.com>

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


More information about the dev mailing list