[dpdk-users] docker container, EAL: failed to initialize virtio_user0 device
Wu, Xiaoban
Xiaoban_Wu at student.uml.edu
Sun May 21 05:53:48 CEST 2017
Hi DPDK Users,
I am trying to use docker container and ovs(2.6.0)-dpdk(16.07) to setup a test. I want to setup two docker containers, each of them will use a virtual device (socket) created by the ovs-dpdk. The final purpose would let the two containers talk to each other.
Setup ovs-dpdk
1. ovsdb-tool create $ovs-dir/etc/openvswitch/conf.db $ovs-dir/share/openvswitch/vswitch.ovsschema
2. ovsdb-server --remote=punix:$ovs-dir/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Open_vSwitch,manager_options --pidfile --detach
3. ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-init=true
4. ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-socket-mem="512,512"
5. ovs-vswitchd unix:$ovs-dir/var/run/openvswitch/db.sock --pidfile --detach --log-file=$ovs-dir/temp.log
Setup bridge and ports
1. ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev
2. ovs-vsctl add-port br0 vhost-user1 -- set Interface vhost-user1 type=dpdkvhostuser ofport_request=1
3. ovs-vsctl add-port br0 vhost-user2 -- set Interface vhost-user2 type=dpdkvhostuser ofport_request=2
4. ovs-ofctl add-flow br0 priority=1000,in_port=1,actions=output:2
5. ovs-ofctl add-flow br0 priority=1000,in_port=2,actions=output:1
Run the docker container
1. docker run -it --privileged -v $ovs-dir/var/run/openvswitch/vhost-user1:/var/run/usvhost -v /mnt/huge/:/dev/hugepages/ $docker-image bash
Run the dpdk application in the docker container
1. $dpdk-app -c 0x01 --socket-mem=128,0 --vdev=virtio_user0,path=/var/run/usvhost --file-prefix="docker1"
However, I encountered this error
PMD: vhost_user_setup(): connect error, Connection refused
PMD: virtio_user_dev_init(): backend set up fails
PMD: virtio_user_pmd_devinit(): virtio_user_dev_init fails
EAL: failed to initialize virtio_user0 device
It seems like the application in the docker container cannot connect the socket created by the ovs-dpdk.
Can anybody please help me and point out some possible solutions? Looking forward to your reply. Thanks very much for your help.
Best wishes,
Xiaoban
More information about the users
mailing list