Skip to contentSkip to conversation

Live migration with dpdk(in host)+vhost-user+dpdk(in guest) fails: Failed to load virtio-net:virtio

dpdk-dev [email protected] 1 participant 1 message Aug 12, 2019

lore
Share & tools
lore
#0 lore raw

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

Bug ID: 337
Summary: Live migration with dpdk(in host)+vhost-user+dpdk(in
guest) fails: Failed to load virtio-net:virtio
Product: DPDK
Version: 19.08
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: vhost/virtio
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ---

Live migration with dpdk(in host)+vhost-user+dpdk(in guest) fails when there are packets through VM.

This is a regression bug: v19.08-rc2 is the first version hit this problem.

commit 07efd6ddc0499688eb11ae4866d3532295d6db2b (tag: v19.05, origin/releases) works well

commit cc091931dc05212db32ddbd7da3031104ca4963f (tag: v19.08-rc1) works well

commit 83a124fb73c50b051ee20ef6b1998c81be7e65df (tag: v19.08-rc2) fail

commit 0710d87b7f5d0a2cd01861d44c4689efd4714b5f (tag: v19.08-rc4) fail

Steps:

1. Boot testpmd in src and des host, refer to [1]

2. Start VM in guest, refer to [2]

3. Start testpmd in guest and start MoonGen in another host, guest can receive packets, refer to[3]

4. Migrate guest from src to des host, fail.

# /bin/virsh migrate --verbose --persistent --live rhel8.0
qemu+ssh://192.168.1.2/system
Migration: [100 %]error: internal error: qemu unexpectedly closed the monitor:
2019-08-08T04:53:36.910570Z qemu-system-x86_64: -chardev
socket,id=charnet1,path=/tmp/vhostuser0.sock,server: info: QEMU waiting for
connection on: disconnected:unix:/tmp/vhostuser0.sock,server
2019-08-08T04:53:37.158587Z qemu-system-x86_64: -chardev
socket,id=charnet2,path=/tmp/vhostuser1.sock,server: info: QEMU waiting for
connection on: disconnected:unix:/tmp/vhostuser1.sock,server
2019-08-08T04:53:52.371518Z qemu-system-x86_64: VQ 0 size 0x400 <
last_avail_idx 0x4d6b - used_idx 0x3ffa
2019-08-08T04:53:52.371633Z qemu-system-x86_64: Failed to load
virtio-net:virtio
2019-08-08T04:53:52.371639Z qemu-system-x86_64: error while loading state for
instance 0x0 of device '0000:00:06.0:00.0/virtio-net'
2019-08-08T04:53:52.373273Z qemu-system-x86_64: load of migration failed:
Operation not permitted

[1]

# /home/dpdk-latest/x86_64-native-linuxapp-gcc/build/app/test-pmd/testpmd \
-l 2,4,6,8,10 \
--socket-mem 1024,1024 \
-n 4 \
-d /home/dpdk-latest/x86_64-native-linuxapp-gcc/lib/librte_pmd_vhost.so \
--vdev net_vhost0,iface=/tmp/vhostuser0.sock,queues=1,client=1,iommu-support=1
\
--vdev net_vhost1,iface=/tmp/vhostuser1.sock,queues=1,client=1,iommu-support=1
\
-- \
--portmask=f \
-i \
--rxd=512 --txd=512 \
--rxq=1 --txq=1 \
--nb-cores=4 \
--forward-mode=io

testpmd> set portlist 0,2,1,3
testpmd> start

[2]

    <interface type='vhostuser'>
      <mac address='18:66:da:5f:dd:02'/>
      <source type='unix' path='/tmp/vhostuser0.sock' mode='server'/>
      <model type='virtio'/>
      <driver name='vhost' rx_queue_size='1024' iommu='on' ats='on'/>
      <alias name='net1'/>
      <address type='pci' domain='0x0000' bus='0x06' slot='0x00'
function='0x0'/>
    </interface>
    <interface type='vhostuser'>
      <mac address='18:66:da:5f:dd:03'/>
      <source type='unix' path='/tmp/vhostuser1.sock' mode='server'/>
      <model type='virtio'/>
      <driver name='vhost' rx_queue_size='1024' iommu='on' ats='on'/>
      <alias name='net2'/>
      <address type='pci' domain='0x0000' bus='0x07' slot='0x00'

function='0x0'/>
</interface>

[3] /home/dpdk-latest/x86_64-native-linuxapp-gcc/build/app/test-pmd/testpmd \
-l 1,2,3 \
-n 4 \
-d /home/dpdk-latest/x86_64-native-linuxapp-gcc/lib/librte_pmd_virtio.so \
-w 0000:06:00.0 -w 0000:07:00.0 \
-- \
--nb-cores=2 \
-i \
--disable-rss \
--rxd=512 --txd=512 \
--rxq=1 --txq=1

testpmd> show port stats all

######################## NIC statistics for port 0 ########################
RX-packets: 1381992 RX-missed: 0 RX-bytes: 82919520
RX-errors: 0
RX-nombuf: 0
TX-packets: 1177961 TX-errors: 0 TX-bytes: 70677660

Throughput (since last show)
Rx-pps: 0
Tx-pps: 0
############################################################################

######################## NIC statistics for port 1 ########################
RX-packets: 1178923 RX-missed: 0 RX-bytes: 70735380
RX-errors: 0
RX-nombuf: 0
TX-packets: 1381077 TX-errors: 0 TX-bytes: 82864620

Throughput (since last show)
Rx-pps: 0
Tx-pps: 0
############################################################################
testpmd>

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.