bmdegraaf Posted July 29, 2015 Share Posted July 29, 2015 I have been trying to get my MSI GTX 970 videocard passedthrough to Windows without any success. Tried most things as suggested by the forum and the wiki. I did manage to get into Windows 8.1 with the Seabios and I440fx setting. But ran into the code 43 nvidia issue. When downloading the latest driver, window crashes on reboot: BSOD. A thing I did not yet try but would like to do, is booting in UEFI via OVMF. However, I cannot get passed the boot shell prompt. When trying fs0: it states it fs0: is an invalid mapping. When typing exit, I can go through the boot menu. But whatever I do, I get back to the shell prompt one way or another. I know my motherboard (X9SCM-IIF) supports UEFI. I have a CPU is XEON. Are there any particular settings I am missing out on? Quote Link to comment
jonp Posted July 29, 2015 Share Posted July 29, 2015 Is your motherboard BIOS up to date? Have you tried moving the GPU to an alternate PCI slot? With the code 43, you didn't adjust the hyper v setting on the VM page to on, did you? Quote Link to comment
natecook Posted July 29, 2015 Share Posted July 29, 2015 When you start the VM, immediately start tapping the delete key to bring you to the OVMF "BIOS" (I doubt it's technically a BIOS). If you get to the shell prompt, type "reset" and try again. From the "BIOS", you can set boot order and boot configurations. There's another thread stating that this information is shared between all OVMF VMs (or more likely that it resets on UnRAID reboot?), so this could be part of your problem. Essentially, you want to find an "Misc" device - this should be the VM's primary volume and should allow you to boot no issues. I'm sticking with SeaBIOS for now. Side note, possibly related: I was getting blue screens due to testing different GPU configurations. I got enough that I corrupted the install and it was unrecoverable. You might need to do another install. Quote Link to comment
bmdegraaf Posted July 29, 2015 Author Share Posted July 29, 2015 OK I'll probably also have a better bed staying with SEABIOS for now.... As JONP suggested I put the Hyper-V back on and at least it is booting again into window using SEABIOS. One step closer ;-) But I am back to square one on the 43 error of the video card, which now has the latest drivers. Quote Link to comment
bungee91 Posted July 29, 2015 Share Posted July 29, 2015 OK I'll probably also have a better bed staying with SEABIOS for now.... As JONP suggested I put the Hyper-V back on and at least it is booting again into window using SEABIOS. One step closer ;-) But I am back to square one on the 43 error of the video card, which now has the latest drivers. Unless he said something elsewhere, he wanted this set to "off", no Hyper-v! If it is on you will need to use old drivers for code 43 to not appear. So current drivers would be Hyper-v = No, old drivers (340.52 or previous) you can use Hyper-v = Yes. Quote Link to comment
bmdegraaf Posted July 31, 2015 Author Share Posted July 31, 2015 Got a step further... in addition to my GPU, also a generic display adapter shows up under the device manager, although I am not passing anything through besides my GTX. When I disable the generic display adapter and reboot, the GPU goes from an error 43 to error 12: this device can find enough free resources ?! Anyone a clue how to resolve this? I disables as much as I can under hardware. The only options I had was to disable the cd-roms... Problem status is reporting: Conflicting Address Range. The specified address range conflicts with the address space. Quote Link to comment
bungee91 Posted July 31, 2015 Share Posted July 31, 2015 Got a step further... in addition to my GPU, also a generic display adapter shows up under the device manager, although I am not passing anything through besides my GTX. When I disable the generic display adapter and reboot, the GPU goes from an error 43 to error 12: this device can find enough free resources ?! Anyone a clue how to resolve this? I disables as much as I can under hardware. The only options I had was to disable the cd-roms... Problem status is reporting: Conflicting Address Range. The specified address range conflicts with the address space. Please share your xml. Quote Link to comment
bmdegraaf Posted July 31, 2015 Author Share Posted July 31, 2015 Sure no problem: <domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'> <name>Windows_Test</name> <uuid>68577d45-f921-15a7-ccdc-f7583935e647</uuid> <metadata> <vmtemplate name="Custom" icon="windows.png" os="windows"/> </metadata> <memory unit='KiB'>4194304</memory> <currentMemory unit='KiB'>4194304</currentMemory> <memoryBacking> <nosharepages/> <locked/> </memoryBacking> <vcpu placement='static'>2</vcpu> <cputune> <vcpupin vcpu='0' cpuset='2'/> <vcpupin vcpu='1' cpuset='3'/> </cputune> <os> <type arch='x86_64' machine='pc-i440fx-2.3'>hvm</type> </os> <features> <acpi/> <apic/> </features> <cpu mode='host-passthrough'> <topology sockets='1' cores='2' threads='1'/> </cpu> <clock offset='localtime'> <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> <devices> <emulator>/usr/bin/qemu-system-x86_64</emulator> <disk type='file' device='disk'> <driver name='qemu' type='raw' cache='writeback'/> <source file='/mnt/disks/vmdata/Windows_Test/vdisk1.img'/> <target dev='hdc' bus='virtio'/> <boot order='1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </disk> <controller type='usb' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='pci' index='0' model='pci-root'/> <controller type='virtio-serial' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </controller> <interface type='bridge'> <mac address='52:54:00:38:60:b2'/> <source bridge='br0'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> <serial type='pty'> <target port='0'/> </serial> <console type='pty'> <target type='serial' port='0'/> </console> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/Windows_Test.org.qemu.guest_agent.0'/> <target type='virtio' name='org.qemu.guest_agent.0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <input type='tablet' bus='usb'/> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'> <listen type='address' address='0.0.0.0'/> </graphics> <video> <model type='vmvga' vram='16384' heads='1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> <memballoon model='virtio'> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </memballoon> </devices> <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='ioh3420,bus=pci.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on'/> </qemu:commandline> </domain> Quote Link to comment
bungee91 Posted July 31, 2015 Share Posted July 31, 2015 Looks like you have been playing manually here, I'd recommend against that. You have both VNC and a passthrough GPU assigned to the VM, which is not supported and in general a bad idea. However, you also don't have any input devices defined to control the VM once you remove the VNC part. So as much as my edits below may help you, you won't be able to DO anything but see a pretty picture. I would delete this VM, but not the image. Add VM from the editor. Set CPU/resources (ram) as you prefer. Map the disk image you already have for this VM. No need to map virtio, or install path. Select your GPU, and sound card (I'd assume you'd want this, it is not in your XML now). Select a USB devices or two for keyboard/mouse. Start VM You should be good! Manually this looks to be your issues, but note you will have no way to control it without USB peripheral. Remove this <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'> <listen type='address' address='0.0.0.0'/> </graphics> <video> <model type='vmvga' vram='16384' heads='1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> Also maybe change this </devices> <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='ioh3420,bus=pci.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on'/> </qemu:commandline> </domain> To this </devices> <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='ioh3420,bus=pci.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on'/> </qemu:commandline> </domain> Quote Link to comment
bmdegraaf Posted August 1, 2015 Author Share Posted August 1, 2015 The problem was indeed having both vnc with an additional GPU. Removed VNC and all is working. As for the original post, i am still having the Uefi boot problem. But hey, got everything working with Seabios. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.