Return to Level1Techs.com

Need Help: Trying Graphics Card passthrough via IOMMU with Error 43 in Windows

Read every guide on creating a Windows 10 guest under Linux passing through a graphics card using IOMMU. Spent a day gettings so far.

I can boot Windows but only if do not use the hyperv, kvm sections / tags and also do not the timer name=‘hypervclock’ present=‘yes’ option in the clock section.

If I delete all those entries. Windows boots, but my Nvidia card has the dreaded error 43 in device manager.

I am using kernel 5.1.15-arch1-1-ARCH, qemu 4.0.0-2, libvirt 5.4.0-1

My current and booting libvirt xml is on pastebin dot com slash zYUtFLK2

The hardware is:

Intel i5-4690K which is exclusivly used by the host
Nvidia Geforce 460 GTX is passed to the windows guest and should be guest exclusive.
Asrock Z97E-ITX/ac board (supports vt-d).

lspci -nnk -d 10de:0e22
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF104 [GeForce GTX 460] [10de:0e22] (rev a1)
Subsystem: Micro-Star International Co., Ltd. [MSI] N460GTX Cyclone 1GD5/OC [1462:2322]
Kernel driver in use: vfio-pci
Kernel modules: nouveau

So my problem is that the usually proposed solutions to this error are specifying things in those sections. I tried that of course, but I got only black screens

When I first looked at GPU passthrough, I contacted Nividia’s community forum. I was told my Geforce GTX 580 didn’t have the necessary BIOS information or something like that, and it was only the 700 series or later that might be able to set up a passthrough system.

1 Like

To be honest, Nvidia 460 simply may not work, i tried VFIO with Nvidia 450 originally, it would not initialize, only if i booted linux from USB, then after booting it would start showing video. Windows went just BSODs in background. As post above says, it has old, incompatible bios

1 Like

Thank you all. Follwoing your advice I just gave up and bought a used gtx 1080!

1 Like

well, did it work?

Also, if you could link some of the guides you used that’s be great. I’m a linux noob, and still trying to decide which distribution to use for setting up my desktop as a windows enslaved gaming machine

i’f you’re linux noob then something ubuntu based is probably the best, since it will have the most guides / troubleshoot info

Im personally on Elementary OS 5, but i had to customize is a bit cuz some default settings it has are awfull (oneclick to browser folder/files, removed some api for notification bar icons - so u dont get slack, discord or steam icons unless you install patch for it and blacklist it from updating in apt, etc)

But if you’re just starting, u can try more distros, decide what you like the most then set up everything on that.

Then if you would want to try pci-e passthrough, i have guide up (originally wendells guide, a bit updated and with more info in certain parts)

I am pretty sure I have set it up properly except one thing… SO, I have booted into windows on a VM through virt manager that is on a separate hard drive than the one my current OS (debian 10) is on. BUT i got error 0x8030001 when selecting the drive I want to install windows onto(the drive is a .qcow2 volume I created through virt manager). I believe this has something to do with setting up my drive size selection but am not sure yet, I have not had enough time to look into this problem, BUT I believe in terms of GPU isolation and all other necessary linux side setup is done.

from my understanding, you store VM as .qcow2 file on separate drive? If your intend was to dedicate whole SSD/HDD to it, u have to remove original VM drive and add physical device manually using “virsh edit” and allow it in apparmor :stuck_out_tongue: