wuzhouhui
2018-08-17 03:42:55 UTC
Hi, all.
I'm using Qemu with SPDK. When specify option "reconnect=1" for
vhost-user-blk socket, the Qemu will exited with error:
2018-08-17T03:39:21.768809Z qemu-system-x86_64: -device vhost-user-blk-pci,id=blk0,chardev=char0,num-queues=4: Failed to set msg fds.
2018-08-17T03:39:21.768893Z qemu-system-x86_64: -device vhost-user-blk-pci,id=blk0,chardev=char0,num-queues=4: vhost-user-blk: vhost initialization failed: Operation not permitted
The whole command line is:
/root/wzh/qemu-2.12.0/build/x86_64-softmmu/qemu-system-x86_64 \
-name guest=wzh,debug-threads=on \
-machine pc-i440fx-2.12,accel=kvm,usb=off,dump-guest-core=off \
-cpu host \
-m 2048 \
-object memory-backend-file,id=mem0,size=2G,mem-path=/dev/hugepages,share=on \
-numa node,memdev=mem0 \
-realtime mlock=off \
-smp 32,sockets=16,cores=2,threads=1 \
-uuid a84e96e6-2c53-408d-986b-c709bc6a0e51 \
-no-user-config \
-nodefaults \
-rtc base=utc,driftfix=slew \
-global kvm-pit.lost_tick_policy=delay \
-no-shutdown \
-boot strict=on \
-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
-device ahci,id=sata0,bus=pci.0,addr=0x4 \
-drive file=/root/wzh/wzh.qcow2,format=qcow2,if=none,id=drive-virtio-disk0,cache=none \
-device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=0 \
-device usb-tablet,id=input0,bus=usb.0,port=1 \
-vnc :0 \
-k en-us \
-device cirrus-vga,id=video0,bus=pci.0,addr=0x2 \
-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 \
-msg timestamp=on \
-chardev socket,id=char0,path=/var/tmp/vhost.0,reconnect=1 \
-device vhost-user-blk-pci,id=blk0,chardev=char0,num-queues=4
The Qemu works fine if I just remove option "reconnect=1". Does Qemu doesn't support this
option for SPDK's vhost-user-blk, or did I made a stupid mistake? Thanks for any advice.
OS: CentOS 7.4
Qemu: 2.12
I'm using Qemu with SPDK. When specify option "reconnect=1" for
vhost-user-blk socket, the Qemu will exited with error:
2018-08-17T03:39:21.768809Z qemu-system-x86_64: -device vhost-user-blk-pci,id=blk0,chardev=char0,num-queues=4: Failed to set msg fds.
2018-08-17T03:39:21.768893Z qemu-system-x86_64: -device vhost-user-blk-pci,id=blk0,chardev=char0,num-queues=4: vhost-user-blk: vhost initialization failed: Operation not permitted
The whole command line is:
/root/wzh/qemu-2.12.0/build/x86_64-softmmu/qemu-system-x86_64 \
-name guest=wzh,debug-threads=on \
-machine pc-i440fx-2.12,accel=kvm,usb=off,dump-guest-core=off \
-cpu host \
-m 2048 \
-object memory-backend-file,id=mem0,size=2G,mem-path=/dev/hugepages,share=on \
-numa node,memdev=mem0 \
-realtime mlock=off \
-smp 32,sockets=16,cores=2,threads=1 \
-uuid a84e96e6-2c53-408d-986b-c709bc6a0e51 \
-no-user-config \
-nodefaults \
-rtc base=utc,driftfix=slew \
-global kvm-pit.lost_tick_policy=delay \
-no-shutdown \
-boot strict=on \
-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
-device ahci,id=sata0,bus=pci.0,addr=0x4 \
-drive file=/root/wzh/wzh.qcow2,format=qcow2,if=none,id=drive-virtio-disk0,cache=none \
-device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=0 \
-device usb-tablet,id=input0,bus=usb.0,port=1 \
-vnc :0 \
-k en-us \
-device cirrus-vga,id=video0,bus=pci.0,addr=0x2 \
-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 \
-msg timestamp=on \
-chardev socket,id=char0,path=/var/tmp/vhost.0,reconnect=1 \
-device vhost-user-blk-pci,id=blk0,chardev=char0,num-queues=4
The Qemu works fine if I just remove option "reconnect=1". Does Qemu doesn't support this
option for SPDK's vhost-user-blk, or did I made a stupid mistake? Thanks for any advice.
OS: CentOS 7.4
Qemu: 2.12