Host freezing with GPU Passthrough on Second Startup

So, I’m very close to having a solid GPU Passthrough setup. I have one more roadblock.

If I boot the host, startup the guest Windows VM it works fine. If I restart the guest VM by clicking on “Restart” in Windows it boots up again fine. However, if i shut down the VM fully and start it again, it’ll show the TianoCore boot screen for about 30 seconds or so and then lock up.

I’ve enabled MSI Interrupts in the VM thinking that might have been causing the lockups. That doesn’t seem to have fixed it.

I’m using libvirt so here is my XML if needed:
https://pastebin.com/sTjTrNPv

I checked journal logs and it doesn’t seem to write any errors or anything.

Anyone have any ideas?

I see that you’re using Q35, i thought that common practice was to use I440FX. Perhaps someone can correct me if I’m wrong.

What GPU are you passing though?

Many AMD cards have a broken reset mechanism, also some other PCI(e) cards do not reset properly.

I’m passing through an NVidia GTX 970.

For the chipset, i’ve been seeing a lot of working configs using Q35 so i didn’t think to try i440fx. I’ll try recreating the VM with i440fx.

Wow that worked. Thanks that was the problem!