January 21, 20188 yr For months I have been trying to get my Nvidia 1050 Ti to passthrough on my own, without bugging the community, but I have failed. I have read hundreds of pages of this (and other) forum post. Watched hours of YouTube. And disassembled my UNRAID machine countless times. I come before you a broken man, pleading for assistance. Here's what I've tried A dozen or so Windows 10 VMs using OMVF & SeaBIOS Hyper V on/off Downloading a GPU BIOS from techpowerup, cutting out the Nvidia header in hex, and adding it to XML. A bunch of various XML tweaks Crying New Virtio drivers Switching PCI slots The closest I have come is with a fresh Win10 install, declaring the edited GPU BIOS in the XML, OMVF, Hyper V Off, and the most recent Virtio drivers. It showed me a picture off the bat using "Microsoft Basic Display Adapter"; but was stuck in 800X600. After finishing installing Win10 I updated the graphics card driver. It realized it was an Nvidia display adapter; but then really freaked out. I waded through that to get the rest of the updates downloaded; and installed. That got me back to a working screen; but the dreaded Code 43 was attached to the Nvidia Display Adapter in device manager; and my resolution is frozen at 800X600. Here's the current XML I have on this VM. <domain type='kvm' id='1'> <name>Win10</name> <uuid>950074cb-7037-b282-b9c6-a92ad0e2352e</uuid> <metadata> <vmtemplate xmlns="unraid" name="Windows 10" icon="windows.png" os="windows10"/> </metadata> <memory unit='KiB'>24641536</memory> <currentMemory unit='KiB'>24641536</currentMemory> <memoryBacking> <nosharepages/> </memoryBacking> <vcpu placement='static'>16</vcpu> <cputune> <vcpupin vcpu='0' cpuset='16'/> <vcpupin vcpu='1' cpuset='17'/> <vcpupin vcpu='2' cpuset='18'/> <vcpupin vcpu='3' cpuset='19'/> <vcpupin vcpu='4' cpuset='20'/> <vcpupin vcpu='5' cpuset='21'/> <vcpupin vcpu='6' cpuset='22'/> <vcpupin vcpu='7' cpuset='23'/> <vcpupin vcpu='8' cpuset='24'/> <vcpupin vcpu='9' cpuset='25'/> <vcpupin vcpu='10' cpuset='26'/> <vcpupin vcpu='11' cpuset='27'/> <vcpupin vcpu='12' cpuset='28'/> <vcpupin vcpu='13' cpuset='29'/> <vcpupin vcpu='14' cpuset='30'/> <vcpupin vcpu='15' cpuset='31'/> </cputune> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-i440fx-2.10'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader> <nvram>/etc/libvirt/qemu/nvram/950074cb-7037-b282-b9c6-a92ad0e2352e_VARS-pure-efi.fd</nvram> </os> <features> <acpi/> <apic/> </features> <cpu mode='host-passthrough' check='none'> <topology sockets='1' cores='8' threads='2'/> </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/local/sbin/qemu</emulator> <disk type='file' device='disk'> <driver name='qemu' type='raw' cache='writeback'/> <source file='/mnt/user/Media/VMs/Win10/vdisk1.img'/> <backingStore/> <target dev='hdc' bus='virtio'/> <boot order='1'/> <alias name='virtio-disk2'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/VM ISOs/Win10_1709_English_x64.iso'/> <backingStore/> <target dev='hda' bus='ide'/> <readonly/> <boot order='2'/> <alias name='ide0-0-0'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/VM ISOs/virtio-win-0.1.141.iso'/> <backingStore/> <target dev='hdb' bus='ide'/> <readonly/> <alias name='ide0-0-1'/> <address type='drive' controller='0' bus='0' target='0' unit='1'/> </disk> <controller type='usb' index='0' model='ich9-ehci1'> <alias name='usb'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/> </controller> <controller type='usb' index='0' model='ich9-uhci1'> <alias name='usb'/> <master startport='0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/> </controller> <controller type='usb' index='0' model='ich9-uhci2'> <alias name='usb'/> <master startport='2'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/> </controller> <controller type='usb' index='0' model='ich9-uhci3'> <alias name='usb'/> <master startport='4'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/> </controller> <controller type='pci' index='0' model='pci-root'> <alias name='pci.0'/> </controller> <controller type='ide' index='0'> <alias name='ide'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <controller type='virtio-serial' index='0'> <alias name='virtio-serial0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </controller> <interface type='bridge'> <mac address='52:54:00:c6:09:76'/> <source bridge='br0'/> <target dev='vnet0'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </interface> <serial type='pty'> <source path='/dev/pts/0'/> <target port='0'/> <alias name='serial0'/> </serial> <console type='pty' tty='/dev/pts/0'> <source path='/dev/pts/0'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-1-Win10/org.qemu.guest_agent.0'/> <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/> <alias name='channel0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <input type='mouse' bus='ps2'> <alias name='input0'/> </input> <input type='keyboard' bus='ps2'> <alias name='input1'/> </input> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x81' slot='0x00' function='0x0'/> </source> <alias name='hostdev0'/> <rom file='/mnt/cache/VM ISOs/zotac.dump'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x81' slot='0x00' function='0x1'/> </source> <alias name='hostdev1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='usb' managed='no'> <source> <vendor id='0x046d'/> <product id='0xc52b'/> <address bus='3' device='3'/> </source> <alias name='hostdev2'/> <address type='usb' bus='0' port='1'/> </hostdev> <hostdev mode='subsystem' type='usb' managed='no'> <source> <vendor id='0x04d9'/> <product id='0x1702'/> <address bus='3' device='4'/> </source> <alias name='hostdev3'/> <address type='usb' bus='0' port='2'/> </hostdev> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/> </memballoon> </devices> <seclabel type='dynamic' model='dac' relabel='yes'> <label>+0:+100</label> <imagelabel>+0:+100</imagelabel> </seclabel> </domain> Diagnostics attached. What else can I do? Anyone have ideas ? Thanks. -Keith NOTE, While typing this out I rolled back the driver to the Generic Microsoft one, then tried updating the driver again, and I got that funky disco screen again. #FAIL diagnostics-20180121-0834.zip zotac.dump
January 22, 20188 yr Spaceinvader One (forum name is gridrunner i think) has some amazing guides on youtube, including a GPU passthrough guide. https://www.youtube.com/channel/UCZDfnUn74N0WeAPvMqTOrtA It was his guide that got me up and running. I'd suggest dumping your own BIOS, rather than using a downloaded one. Also I could not get it working under 6.4 (pre relase candidate) so used 6.3.5. I have just upgraded to 6.4 and it still seems fine, but i've not made the switch to UEFI. For some reason I feel there is a problem with UEFI and nvidia GPU passthough right now (only because of my issues with the pre release candidate one one random post on these forums) I would love to know if anyones up and running with 6.4 UEFI that before I make the switch.
January 22, 20188 yr Author Thanks @nox_uk, I followed his video for editing the Techpowerup BIOS. I was going to follow that one; but I don't have a spare GPU lying around to do a bump. Can I do it via Remote Desktop? So to avoid UEFI.....do I just make it SeaBIOS? Sorry for the stupid questions, thanks for your help. I really appreciate it. -Keith
January 23, 20188 yr I went 6.3.5 - there is no UEFI option. The bios dump needs you to connect to the unraid server using something like putty, so you can RDP onto your VM and run putty from there but it's probably easier just to putty to the unraid server This then dumps the file onto the unraid server, which is perfect. Pretty sure I set to SeaBIOS, boots up with Tianocore. I can check but not this second It's whatever was in the guide. After that, just run the update to 6.4 - you get all the new features but will remain as BIOS by default on your vm (and thus still works fine).
Archived
This topic is now archived and is closed to further replies.