Hey VFIO-Users and supporters, since april I am a happy user of vfio and graphics card redirection to Windows 10 Pro. Since the last updates I got some trouble with my setup, that the windows vm is crashing if there is a driver and the RX 580 is passtroughed to it.
For troubleshooting purposes I installed a fresh new Windows 8.1 Pro machine, there the driver cant get installed because the driver setup seems to find the wrong pci ven / pci device numbers. The RX580 is also only detected as a "Microsoft Basic Graphics Adapter". My old setup which was working fine for months look like this in xml and is generated from libvirt-manager: <domain type='kvm'> <name>Passtrough</name> <uuid>76ad470f-e9df-48bd-9b77-abee61582fe2</uuid> <memory unit='KiB'>8388608</memory> <currentMemory unit='KiB'>8388608</currentMemory> <memoryBacking> <hugepages/> </memoryBacking> <vcpu placement='static'>6</vcpu> <os> <type arch='x86_64' machine='pc-i440fx-zesty'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.fd</loader> <nvram>/var/lib/libvirt/qemu/nvram/Passtrough_VARS.fd</nvram> <bootmenu enable='yes'/> </os> <features> <acpi/> <apic/> <hyperv> <relaxed state='on'/> <vapic state='on'/> <spinlocks state='on' retries='8191'/> </hyperv> <kvm> <hidden state='on'/> </kvm> </features> <cpu mode='custom' match='exact'> <model fallback='allow'>Skylake-Client</model> <topology sockets='1' cores='6' threads='1'/> </cpu> <clock offset='localtime'> <timer name='rtc' tickpolicy='catchup'/> <timer name='pit' tickpolicy='delay'/> <timer name='hpet' present='no'/> <timer name='hypervclock' present='yes'/> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <pm> <suspend-to-mem enabled='no'/> <suspend-to-disk enabled='no'/> </pm> <devices> <emulator>/usr/bin/kvm-spice</emulator> <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='writeback'/> <source file='/mnt/blue/kvm-data/win-data.qcow2'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='writeback'/> <source file='/var/lib/libvirt/images/Passtrough.qcow2'/> <target dev='vdb' bus='virtio'/> <boot order='1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/var/lib/libvirt/images/Passtrough-1.qcow2'/> <target dev='vdc' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/home/brian/Downloads/virtio-win-0.1.126.iso'/> <target dev='sdb' bus='sata'/> <readonly/> <address type='drive' controller='0' bus='0' target='0' unit='1'/> </disk> <controller type='pci' index='0' model='pci-root'/> <controller type='sata' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </controller> <controller type='usb' index='0' model='ich9-ehci1'> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x7'/> </controller> <controller type='usb' index='0' model='ich9-uhci1'> <master startport='0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/> </controller> <controller type='usb' index='0' model='ich9-uhci2'> <master startport='2'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/> </controller> <controller type='usb' index='0' model='ich9-uhci3'> <master startport='4'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/> </controller> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <hostdev mode='subsystem' type='usb' managed='yes'> <source> <vendor id='0x045e'/> <product id='0x0084'/> </source> <address type='usb' bus='0' port='1'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <source> <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </hostdev> <memballoon model='virtio'> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </memballoon> </devices> </domain> (Dont be suprised, I also tried to passtrough both pci devices -> audio and graphics, same issue). Just sayin that I couldnt find any errors or syslog entrys in the logs. My vfio setup seems also to be fine: (dmesg | grep vfio) Command line: BOOT_IMAGE=/vmlinuz-4.10.0-26-generic root=/dev/mapper/ubuntu--mate--vg-root ro quiet splash intel_iommu=on vfio_iommu_type1.allow_unsafe_interrupts=1 [ 0.000000] Kernel command line: BOOT_IMAGE=/vmlinuz-4.10.0-26-generic root=/dev/mapper/ubuntu--mate--vg-root ro quiet splash intel_iommu=on vfio_iommu_type1.allow_unsafe_interrupts=1 [ 57.925247] vfio-pci 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=none [ 57.944392] vfio_pci: add [1002:67df[ffff:ffff]] class 0x000000/00000000 [ 57.964435] vfio_pci: add [1002:aaf0[ffff:ffff]] class 0x000000/00000000 [ 58.599615] vfio-pci 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=none The funny thing is, the audio device is correctly detected from the driver. I also opened a thread on the vfio-subreddit and got redirected to you guys. Any help is highly appreciated. Regards Th3R3al _______________________________________________ vfio-users mailing list vfio-users@redhat.com https://www.redhat.com/mailman/listinfo/vfio-users