Hi, I'm running a Windows VM on top of KVM on x86, and one of virtio-net device in the Windows VM doesn't seem to work. I provided virtual IOMMU and two virtio-net devices to the VM: one bypassing the virtual IOMMU and the other one behind the virtual IOMMU[1]. It turned out that the virtio-net device behind virtual IOMMU didn't work while the one bypassing the virtual IOMMU worked well. In a linux VM with the same configuration, both of virtio-net device worked well.
I found that there is a subtle difference between virtio-net devices bypassing and behind virtual IOMMU in a Linux VM. The lscpu command in the Linux VM shows different device names for them; the first line is for the bypassing one, and the second line is for the one behind the virtual IOMMU 00:03.0 Ethernet controller: Red Hat, Inc Virtio network device 01:00.0 Ethernet controller: Red Hat, Inc Device 1041 (rev 01) I wonder if this difference somehow caused the problem in the Windows VM. I've installed the latest virtio drivers (0.1.149) from the fedora project [2] Any thoughts? I'm using v4.15 Linux kernel as a host, and QEMU 2.11.0. Thanks, Jintack [1] https://wiki.qemu.org/Features/VT-d [2] https://docs.fedoraproject.org/quick-docs/en-US/creating-windows-virtual-machines-using-virtio-drivers.html