Additional network device is not recognized on windows guest vm
Host environment
- Operating system: Ubuntu 22.04.1 LTS
- OS/kernel version: 5.15.0-86-generic
- Architecture: x86_64
- QEMU flavor: qemu-system-x86_64
- QEMU version: v7.2.2
- QEMU command line:
sudo /usr/local/bin/qemu-system-x86_64 -name debug-threads=on -vnc 0.0.0.0:865 -daemonize -enable-kvm -machine q35 -nodefaults \
-object iothread,id=iothread1 \
-cpu host -smp 16 -m 32768 -device pcie-pci-bridge,id=bridge,bus=pcie.0,addr=0x1a -no-shutdown -boot strict=on \
-object memory-backend-file,id=ram-node0,prealloc=on,mem-path=/dev/hugepages/hugepage-file,share=on,size=8192M \
-numa node,nodeid=0,cpus=0-1,memdev=ram-node0 -device virtio-balloon-pci,id=balloon0 \
-blockdev {"driver":"qcow2","node-name":"vdaFile","file":{"driver":"file","filename":"/root/win_test/win2019-pub-original-20231025-v1.qcow2"}}
-device virtio-blk-pci,iothread=iothread1,scsi=off,drive=vda,id=vvda,bootindex=1,bus=bridge,addr=0x6,serial=3279302 \
-chardev socket,id=charnet_34,path=/tmp/17115.0,server=on \
-netdev vhost-user,chardev=charnet_34,queues=2,id=hostnet_34 \
-device virtio-net-pci,mq=on,vectors=6,netdev=hostnet_34,id=dpdk_34,mac=F2:20:AF:40:12:65,bus=bridge,addr=0x7,page-per-vq=on,rx_queue_size=1024,tx_queue_size=1024,mrg_rxbuf=on,disable-legacy=on,disable-modern=off,host_mtu=1500,csum=on,guest_csum=on,host_tso4=on,host_tso6=on \
-vga std -qmp-pretty unix:$socket,server=on,wait=off \
-usb -device usb-kbd -device usb-tablet
Emulated/Virtualized environment
- Operating system: Windows 2019/2022
- OS/kernel version:
- Architecture: x86
- Virtio-win version : 1.225-2, 1.229-1, 1.240-1
Description of problem
I have a problem for using Windows 2019/2022 guest vm as QEMU. When I add a network device more online, it isn't work and recognized. There is an error occurs at the Device Manager.
I added network device with this qmp command
'{ "execute": "chardev-add", "arguments":{"id":"charnet_35", "backend": { "type" : "socket", "data" : { "addr" : { "type" : "unix", "data" : {"path" : "/tmp/17115.1''"}}, "server" : true, "wait" : false }}}}' | nc -U $socket -N
'{ "execute": "netdev_add", "arguments":{"type":"vhost-user", "id":"'hostnet_35", "chardev":"charnet_35", "queues":2 }}' | nc -U $socket -N
'{ "execute" : "device_add", "arguments" : {"driver" : "virtio-net-pci", "mq":"on" ,"vectors":6, "netdev":"hostnet_35", "id":"dpdk_35", "mac":"F2:20:AF:40:12:65", "bus" : "bridge", "addr" : "0x8", "page-per-vq": "on", "rx_queue_size" : 1024, "tx_queue_size": 1024, "mrg_rxbuf" : "on", "disable-legacy": "on", "disable-modern" : "off" , "host_mtu" : 1500, "csum" : "on", "guest_csum" : "on", "host_tso4" : "on", "host_tso6" : "on"}}' | nc -U $socket -N
But, I can check recognized additional Network device after Windows guest vm rebooted.
Steps to reproduce
- Boot Windows 2019/2022 guest vm
- Add chardev, netdev, device more with qmp command as hotplug
- Check Network device recognition on the guest os
Additional information
Edited by 슈니