DPDK nes:Qemu由于缺少usvhost-1字符设备

时间:2018-01-25 11:05:49

标签: dpdk

在使用DPDK为移动边缘计算配置NES环境的过程中,系统正在生成错误消息,如下所示:

  

Qemu-System-X86_64:-Chardev Socket,Id = Char1,Path = / Usr / Bin / Usvhost-1:   无法连接套接字:没有这样的文件或目录

注意:我使用的是CentOS 7。

使用的命令列表如下:

mkdir -p /mnt/huge-1048576kB
mount -t hugetlbfs nodev /mnt/huge-1048576kB

./scripts/setup.sh

nginx
redis-server /etc/redis/redis.conf &

tunctl -t tap0
brctl addif virbr0 tap0
ifconfig eno1 0 up
ip addr add 10.138.77.17/24 dev virbr0

export RTE_SDK=/opt/dpdk-stable-16.07.2
export RTE_TARGET=x86_64-native-linuxapp-gcc
make

export NES_SERVER_CONF=/opt/intel/nev_sdk/nes_root/scripts/nes.cfg

cd scripts/
./nes-daemon-start 
0000:1c:00.1 already bound to driver igb_uio, skipping
0000:1c:00.0 already bound to driver igb_uio, skipping


/usr/local/bin/qemu-system-x86_64 -enable-kvm -cpu host -m 4096 -no-reboot -no-hpet -drive file=/home/tcs/ubuntu-14.04.5-desktop-amd64.iso,if=virtio,id=drive-virtio-disk1,format=raw -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge-1048576kB/,share=on -numa node,memdev=mem -mem-prealloc -device virtio-net-pci,netdev=net0,mac=ac:1f:6b:09:cb:9a -netdev type=tap,id=net0 -chardev socket,id=char1,path=/usr/bin/usvhost-1 -netdev type=vhost-user,id=mynet1,chardev=char1 -device virtio-net-pci,mac=52:54:00:00:00:01,netdev=mynet1,id=net1,csum=off,gso=off,guest_csum=off,guest_tso4=off,guest_tso6=off,guest_ecn=off
Qemu-System-X86_64: -Chardev Socket,Id=Char1,Path=/Usr/Bin/Usvhost-1: Failed To Connect Socket: No Such File Or Directory

1 个答案:

答案 0 :(得分:0)

我不熟悉NES,但是从列出的命令看起来./nes-daemon-start之后/Usr/Bin/Usvhost-1中应该有一个Unix套接字。

由于QEMU无法连接到套接字/Usr/Bin/Usvhost-1,显然nes-daemon-start会在另一个地方创建套接字。

解决方案是检查路径/Usr/Bin/Usvhost-1是否正确。在大多数Unix文件系统中,字母大小写有区别,即/Usr/usr是不同的路径。也许这就是QEMU无法找到提供的路径的情况。