[dpdk-users] new_device is never created at the vhost-switch sample app

edgar helmut helmut.edgar100 at gmail.com
Fri Nov 25 08:58:33 CET 2016


Hi,
I am following http://dpdk.org/doc/guides/sample_app_ug/vhost.html using
16.11 in order to have a simple VM forwarding packets from one NIC to
another efficiently, but it doesn't work... so I need some help to
understand what am i missing.
I am using x520 (intel 82599).
host is ubuntu 16.04 and dpdk 16.11.

my steps at host:
1. enabling VHOST defines and building x86_64-native-linuxapp-gcc.

2. both interfaces are bind like:
0000:04:00.0 'Ethernet 10G 2P X520 Adapter' drv=igb_uio unused=ixgbe
0000:04:00.1 'Ethernet 10G 2P X520 Adapter' drv=igb_uio unused=ixgbe

3. then making the project examples/vhost and executing:
./build/vhost-switch -c 0x03 -n 4 --socket-mem 1024 --file-prefix p1  -- -p
1 --vm2vm 0 --socket-file /tmp/sock1 --client -P
./build/vhost-switch -c 0x30 -n 4 --socket-mem 1024 --file-prefix p2  -- -p
2 --vm2vm 0 --socket-file /tmp/sock2 --client -P

4. creating the guest
qemu- system-x86_64 -chardev socket,id=char1,path=/tmp/sock1,server -netdev
type=vhost-user,id=hostnet1,chardev=char1,queues=2 -device
virtio-net-pci,mq=on,vectors=2,netdev=hostnet1,id=net1,mac=00:00:00:00:00:01
-chardev socket,id=char2,path=/tmp/sock2,server -netdev
type=vhost-user,id=hostnet2,chardev=char2,queues=2 -device
virtio-net-pci,mq=on,vectors=2,netdev=hostnet2,id=net2,mac=00:00:00:00:00:02
-object
memory-backend-file,id=mem2,size=2048M,mem-path=/run/hugepages,share=on  ...

my steps on the guest:
1. enabling VHOST defines and building x86_64-native-linuxapp-gcc.

2. successfully setting up environment:
modprobe uio_pci_generic
./tools/dpdk-devbind.py -b uio_pci_generic 0000:00:07.0
./tools/dpdk-devbind.py -b uio_pci_generic 0000:00:08.0
./examples/l3fwd/build/l3fwd -c 0x3 -n 3 -- --parse-ptype -p 0x3 -P -L
--config="(0,0,0),(0,1,1),(1,0,0),(1,1,1)" --no-numa
it looks like the l3fwd app initialized successfully but it receives no
traffic.

I see at the host that connection is made however no traffic arrives to the
host.
digging into the code i see that the message VHOST_USER_SET_VRING_KICK
never arrives to the host hence the callback new_device is never called and
I can't figure out why.

Any ideas?

Thanks,
Edgar


More information about the users mailing list