[vfio-users] Windows 10 guest refuses to boot when passed my NVIDIA graphics card
Blank Field
ihatethisfield at gmail.com
Tue Sep 15 15:58:43 UTC 2015
All i can say about this problem: try another OS.
I've ran into that kind of problem exceptionally on win10.
And i have a radeon card, go figure why the new OS is upset again.
On Sep 15, 2015 6:33 PM, "Jasen Borisov" <tajjada at gmail.com> wrote:
> Hello everyone,
>
> I have been following the guides on the vfio blogspot for setting up a
> Windows guest for gaming by passing it my NVIDIA GeForce GTX 980 graphics
> card. I have an AMD Radeon R7 250 graphics card for my Linux host. I have
> ran into a strange problem and have not managed to find a solution to it
> online, so I decided to come here and see if anyone knows anything about it.
>
> Here is the problem I am facing:
>
> I installed the Windows guest (Windows 10 Pro) in a kvm virtual machine
> made with virt-manager, using the default qxl/spice setup during the
> installation, as instructed here
> <http://vfio.blogspot.bg/2015/05/vfio-gpu-how-to-series-part-4-our-first.html>.
> After the installation completed, I removed any extra virtual devices and
> added the PCI host/vfio device for my NVIDIA graphics card. I also edited
> the XML to hide the kvm virtualization, in preparation for installing the
> NVIDIA drivers on Windows, when I boot with my actual graphics card. I have
> made no attempt to configure hugepages yet.
>
> However, when starting up the VM, Windows no longer booted successfully. I
> saw the Tianocore splash on my physical monitor, followed by the Windows
> logo. The Windows logo stayed frozen (without the spinning loading
> indicator under it) for a few minutes, and then the spinning-dots loading
> indicator appeared for a few seconds and the machine *reset*. It kept
> resetting again and again, never getting past the Windows boot screen.
>
> I would assume that my PCI passthrough worked successfully, since my
> physical monitor turned on and I saw the video output from the virtual
> machine on it. However, I can't figure out why Windows cannot finish
> booting successfully. Any help with this issue would be greatly appreciated.
>
> The same copy of Windows (or rather, installed from the same installation
> ISO) works fine with my NVIDIA card on my actual hardware / when not in a
> virtual machine, so I am sure this is not a hardware problem.
>
>
> Here is some relevant information about my system:
>
> /proc/cmdline:
> ... intel_iommu=on iommu=pt vfio-pci.ids=10de:13c0,10de:0fbb,8086:8d26
> vfio.disable_vga=1 ...
> (I omitted my rootfs and other irrelevant kernel options)
> The PCI IDs listed in my kernel commandline are my GPU, its audio, and an
> EHCI controller on my system for USB, in that order.
>
> I did not need to use any "hacks" like the ACS override patch or the
> enable_unsafe_interrupts option, since I did not experience the relevant
> issues that they were made to fix. Each one of the PCI IDs above is in its
> own IOMMU group. My system has no integrated graphics (Core i7 Extreme
> 5960X CPU).
>
>
> These lines appeared in dmesg when the VM started:
>
> [ 582.886435] kvm: SMP vm created on host with unstable TSC; guest TSC
> will not be reliable
> [ 584.200023] vfio-pci 0000:02:00.0: enabling device (0100 -> 0103)
> [ 584.200114] vfio_ecap_init: 0000:02:00.0 hiding ecap 0x1e at 0x258
> [ 584.200120] vfio_ecap_init: 0000:02:00.0 hiding ecap 0x19 at 0x900
> [ 584.223041] vfio-pci 0000:00:1d.0: enabling device (0000 -> 0002)
> [ 584.324093] vfio_cap_init: 0000:00:1d.0 hiding cap 0xa
> [ 589.132151] kvm: zapping shadow pages for mmio generation wraparound
> [ 589.133051] kvm: zapping shadow pages for mmio generation wraparound
>
>
> The libvirt domain XML of the virtual machine (yes, I called my VM
> "nouveideo" = "nouveau" + "video" :) ):
>
> <domain type='kvm'>
> <name>nouveideo</name>
> <uuid>849fe365-1dfe-44f6-9755-9b48eb325400</uuid>
> <memory unit='KiB'>12345344</memory>
> <currentMemory unit='KiB'>12345344</currentMemory>
> <memoryBacking>
> <nosharepages/>
> </memoryBacking>
> <vcpu placement='static'>16</vcpu>
> <cputune>
> <vcpupin vcpu='0' cpuset='0'/>
> <vcpupin vcpu='1' cpuset='1'/>
> <vcpupin vcpu='2' cpuset='2'/>
> <vcpupin vcpu='3' cpuset='3'/>
> <vcpupin vcpu='4' cpuset='4'/>
> <vcpupin vcpu='5' cpuset='5'/>
> <vcpupin vcpu='6' cpuset='6'/>
> <vcpupin vcpu='7' cpuset='7'/>
> <vcpupin vcpu='8' cpuset='8'/>
> <vcpupin vcpu='9' cpuset='9'/>
> <vcpupin vcpu='10' cpuset='10'/>
> <vcpupin vcpu='11' cpuset='11'/>
> <vcpupin vcpu='12' cpuset='12'/>
> <vcpupin vcpu='13' cpuset='13'/>
> <vcpupin vcpu='14' cpuset='14'/>
> <vcpupin vcpu='15' cpuset='15'/>
> </cputune>
> <os>
> <type arch='x86_64' machine='pc-i440fx-2.4'>hvm</type>
> <loader type='pflash'>/btrfs/VirtualMachines/OVMF_nouveideo.fd</loader>
> </os>
> <features>
> <acpi/>
> <apic/>
> <pae/>
> <kvm>
> <hidden state='on'/>
> </kvm>
> <vmport state='off'/>
> </features>
> <cpu mode='host-passthrough'>
> <topology sockets='1' cores='8' threads='2'/>
> </cpu>
> <clock offset='utc'>
> <timer name='rtc' tickpolicy='catchup'/>
> <timer name='pit' tickpolicy='delay'/>
> <timer name='hpet' present='no'/>
> </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/qemu-system-x86_64</emulator>
> <disk type='file' device='disk'>
> <driver name='qemu' type='raw'/>
> <source file='/btrfs/VirtualMachines/Win10NOUVEIDEO.img'/>
> <target dev='vda' bus='virtio'/>
> <boot order='1'/>
> <address type='pci' domain='0x0000' bus='0x00' slot='0x07'
> function='0x0'/>
> </disk>
> <disk type='block' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <target dev='hdb' bus='ide'/>
> <readonly/>
> <boot order='2'/>
> <address type='drive' controller='0' bus='0' target='0' unit='1'/>
> </disk>
> <disk type='file' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <source file='/btrfs/VirtualMachines/virtio-win-0.1.109.iso'/>
> <target dev='hdc' bus='ide'/>
> <readonly/>
> <address type='drive' controller='0' bus='1' target='0' unit='0'/>
> </disk>
> <controller type='pci' index='0' model='pci-root'/>
> <controller type='ide' index='0'>
> <address type='pci' domain='0x0000' bus='0x00' slot='0x01'
> function='0x1'/>
> </controller>
> <controller type='usb' index='0' model='nec-xhci'>
> <address type='pci' domain='0x0000' bus='0x00' slot='0x02'
> function='0x0'/>
> </controller>
> <interface type='bridge'>
> <mac address='52:54:00:b3:71:21'/>
> <source bridge='br0'/>
> <model type='virtio'/>
> <address type='pci' domain='0x0000' bus='0x00' slot='0x03'
> function='0x0'/>
> </interface>
> <sound model='ich6'>
> <address type='pci' domain='0x0000' bus='0x00' slot='0x04'
> function='0x0'/>
> </sound>
> <hostdev mode='subsystem' type='pci' managed='yes'>
> <source>
> <address domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
> </source>
> <address type='pci' domain='0x0000' bus='0x00' slot='0x0a'
> function='0x0' multifunction='on'/>
> </hostdev>
> <hostdev mode='subsystem' type='pci' managed='yes'>
> <source>
> <address domain='0x0000' bus='0x02' slot='0x00' function='0x1'/>
> </source>
> <address type='pci' domain='0x0000' bus='0x00' slot='0x0a'
> function='0x1'/>
> </hostdev>
> <hostdev mode='subsystem' type='pci' managed='yes'>
> <source>
> <address domain='0x0000' bus='0x00' slot='0x1d' function='0x0'/>
> </source>
> <address type='pci' domain='0x0000' bus='0x00' slot='0x1d'
> function='0x0'/>
> </hostdev>
> <memballoon model='virtio'>
> <address type='pci' domain='0x0000' bus='0x00' slot='0x08'
> function='0x0'/>
> </memballoon>
> </devices>
> </domain>
>
> Let me know if there is any other information I could provide which could
> help identify and correct the problem.
>
> _______________________________________________
> vfio-users mailing list
> vfio-users at redhat.com
> https://www.redhat.com/mailman/listinfo/vfio-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20150915/bc45c563/attachment.htm>
More information about the vfio-users
mailing list