QaidVoid / Complete-Single-GPU-Passthrough

Single GPU VFIO Passthrough Guide
755 stars 38 forks source link

AMD GPU Lessons learned #9

Closed cdgriffith closed 3 years ago

cdgriffith commented 3 years ago

Thank you so much for writing this guide, it was exactly the base of what I needed to get GPU Passthrough working.

IOMMU

Two gotcha's that would be nice to expand upon, first is that you can have IOMMU enabled, but still not working (aka you don't see any iommu groups) if not enabled in BIOS.

Second is that ALL devices in the IOMMU group must be detached and re-attached, otherwise you will get the error "Please ensure all devices within the iommu_group are bound to their vfio bus driver" in the logs.

Libvirt Hooks - AMD changes

At least for 6000 series cards, make sure to comment out the Unbind EFI line in both start and stop. It will cause a segfault and cause the system to become unstable.

Move (or I copied) modprobe -r amdgpu to below the detach lines, otherwise it will spit out a "modprobe: FATAL : Module amdgpu is in use." error.

Also confirming that for the ref 6900xt no custom bios is needed.

Keyboard / Mouse Passthrough

On Ubuntu 20.04 with libvirt 6.0.0 I could not set the xmlns:qemu, as it would instantly disappear on saving. Same with trying to add the qemu:commandline section. Instead I added those devices through + Add Hardware > USB Host Device and they worked without issue.

QaidVoid commented 3 years ago

Thanks for your comment, I'll update the content when I get time.

As for the issue with xmlns:qemu, it just works that way. If you have nothing in the configuration body that requires it, it just disappears. So, you have to save the file only after setting the qemu:commandline section.

QaidVoid commented 3 years ago

Added relevant information.