RX570 stopped working in Windows 10 w/ GPU pass through

Been using a Windows 10 VM with an XFX RX570 via VFIO passthrough on Arch Linux for a while (host system is a Threadripper 2950X in a ASrock TaiChi x399). A couple of days ago it just…stopped working. No major updates to Windows. I’ve tried removing the Windows drivers and doing a clean install of those. No luck. I tried applying the latest kernel updates to Arch, still nothing. The driver reports a (Code 43) in Windows. The GPU does correctly initialize at VM startup, I see the TianoCore splash screen. Then…nothing. If I do a clean install of the drivers, I tend to get the monitor to show me it successfully syncing at native resolution, but never more for a second or two. Also, when this happens, the GPU fan ramps to 100% for a few seconds. Any ideas?

@edolnx let me guess, you are using a Nividia graphics card.

Nope, both GPUs (the pass through and the one I’m typing on now) are AMD. The pass-through is an RX570, and the Linux one is an RX590

Well, I won’t be of any help, You shouldn’t be getting error code 43 in Windows. The reason you shouldn’t is I never heard off an AMD graphics card causing that error, are you sure Windows doesn’t think it is running a Nividia graphics card?

Ran the DDU to ensure that there were not nvidia or AMD drivers (this machine has never had an nvidia card in it). There is a RedHat QXL driver, but that’s it.

Often when Nvidia cards get the 43 error, its an issue where the entire card wasn’t passed through to the VM.

Did you pass through the audio component as well as the video?

Also may be helpful to test the card in a known working PC directly if possible to rule out a broken GPU.

try adding:
<vendor_id state=‘on’ value=‘qwerty123456’/> to you vm configuration between
It helped in my setup.

Turns out the problems are the lovely AMD drivers. I took the card out and used it in a different machine (no virtualization but same display and cables) and the later drivers cause the same problem. The “Microsoft Generic Display Driver” works at the full resolution (but only at 14-15fps). Some AMD drivers work but at a random resolution and you cannot change it. I’m trying older drivers to see what happens.