All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [dpdk-dev] [Bug 633] Secondary process crash with virtio PMD
Date: Wed, 03 Feb 2021 13:01:14 +0000	[thread overview]
Message-ID: <bug-633-3@http.bugs.dpdk.org/> (raw)

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

            Bug ID: 633
           Summary: Secondary process crash with virtio PMD
           Product: DPDK
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: vhost/virtio
          Assignee: dev@dpdk.org
          Reporter: anatoly.burakov@intel.com
  Target Milestone: ---

This issue looks to be similar to bug 631, but it is not fixed as of latest
main or next-net. Spinning up a VM with DPDK as vhost and legacy virtio device,
and running testpmd as primary, and pdump as secondary results in the following
crash:

```
Thread 1 "dpdk-pdump" received signal SIGSEGV, Segmentation fault.
0x0000555555a12cc8 in rte_pci_ioport_map (dev=0x555556442bb0, bar=0,
p=0x5555562b9ec0 <virtio_pci_internal>) at ../drivers/bus/pci/linux/pci.c:751
751             switch (dev->kdrv) {
(gdb) bt
#0  0x0000555555a12cc8 in rte_pci_ioport_map (dev=0x555556442bb0, bar=0,
p=0x5555562b9ec0 <virtio_pci_internal>) at ../drivers/bus/pci/linux/pci.c:751
#1  0x0000555555a9cada in vtpci_legacy_ioport_map (hw=0x1003b2dc0) at
../drivers/net/virtio/virtio_pci.c:882
#2  0x0000555555a9558a in virtio_remap_pci (pci_dev=0x5555562e5ba0,
dev=0x1003b2dc0) at ../drivers/net/virtio/virtio_pci_ethdev.c:63
#3  0x0000555555a956e2 in eth_virtio_pci_init (eth_dev=0x555556232540
<rte_eth_devices>) at ../drivers/net/virtio/virtio_pci_ethdev.c:90
#4  0x0000555555a95488 in rte_eth_dev_pci_generic_probe
(pci_dev=0x5555562e5ba0, private_data_size=128, dev_init=0x555555a9559c
<eth_virtio_pci_init>)
    at ../lib/librte_ethdev/ethdev_pci.h:129
#5  0x0000555555a95a91 in eth_virtio_pci_probe (pci_drv=0x555555ce4600
<rte_virtio_net_pci_pmd>, pci_dev=0x5555562e5ba0) at
../drivers/net/virtio/virtio_pci_ethdev.c:192
#6  0x0000555555a0f72c in rte_pci_probe_one_driver (dr=0x555555ce4600
<rte_virtio_net_pci_pmd>, dev=0x5555562e5ba0) at
../drivers/bus/pci/pci_common.c:243
#7  0x0000555555a0f92b in pci_probe_all_drivers (dev=0x5555562e5ba0) at
../drivers/bus/pci/pci_common.c:318
#8  0x0000555555a0f9b4 in pci_probe () at ../drivers/bus/pci/pci_common.c:345
#9  0x00005555559c9573 in rte_bus_probe () at
../lib/librte_eal/common/eal_common_bus.c:72
#10 0x00005555559f720a in rte_eal_init (argc=8, argv=0x7fffffffe230) at
../lib/librte_eal/linux/eal.c:1281
#11 0x0000555555592222 in main (argc=8, argv=0x7fffffffe3d8) at
../app/pdump/main.c:989 
```

Offending commit:

```
commit c8d4b02f72aefda2dbe2895cd661c29161a6770d
Author: Maxime Coquelin <maxime.coquelin@redhat.com>
Date:   Tue Jan 26 11:16:12 2021 +0100

    net/virtio: move legacy IO to virtio PCI

    This patch moves Virtio PCI legacy IO handling to
    virtio_pci.c. Two functions are created so that
    virtio_pci_ethdev does not have to care about it.

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

VM setup command is as follows:

```
/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.212:6000-:22 -device
e1000,netdev=nttsip1  -chardev socket,id=char0,path=/root/dpdk/vhost-net0
-netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce -device
virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,disable-modern=true,mrg_rxbuf=on,csum=on,gso=on,guest_csum=on,host_tso4=on,guest_tso4=on,guest_ecn=on
-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
```

Test-pmd and pdump can be run without any parameters, so:

```
# app/dpdk-testpmd
# ...in another window...
# app/dpdk-pdump
```

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

                 reply	other threads:[~2021-02-03 13:01 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-633-3@http.bugs.dpdk.org/ \
    --to=bugzilla@dpdk.org \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.