AMD GPU problems under Xen
Alex Deucher
alexdeucher at gmail.com
Tue Nov 29 14:32:54 UTC 2022
On Mon, Nov 28, 2022 at 8:59 PM Demi Marie Obenour
<demi at invisiblethingslab.com> wrote:
>
> On Mon, Nov 28, 2022 at 11:18:00AM -0500, Alex Deucher wrote:
> > On Mon, Nov 28, 2022 at 2:18 AM Demi Marie Obenour
> > <demi at invisiblethingslab.com> wrote:
> > >
> > > Dear Christian:
> > >
> > > What is the status of the AMDGPU work for Xen dom0? That was mentioned in
> > > https://lore.kernel.org/dri-devel/b2dec9b3-03a7-e7ac-306e-1da024af8982@amd.com/
> > > and there have been bug reports to Qubes OS about problems with AMDGPU
> > > under Xen (such as https://github.com/QubesOS/qubes-issues/issues/7648).
> >
> > I would say it's a work in progress. It depends what GPU you have
> > and what type of xen setup you are using (PV vs PVH, etc.).
>
> The current situation is:
>
> - dom0 is PV.
> - VMs with assigned PCI devices are HVM and use a Linux-based stubdomain
> QEMU does not run in dom0.
> - Everything else is PVH.
>
> In the future, I believe the goal is to move away from PV and HVM in
> favor of PVH, though HVM support will remain for compatibility with
> guests (such as Windows) that need emulated devices.
>
> > In general, your best bet currently is dGPU add in boards because they
> > are largely self contained.
>
> The main problem is that for the trusted GUI to work, there needs to
> be at least one GPU attached to a trusted VM, such as the host or a
> dedicated GUI VM. That VM will typically not be running graphics-
> intensive workloads, so the compute power of a dGPU is largely wasted.
> SR-IOV support would help with that, but the only GPU vendor with open
> source SR-IOV support is Intel and it is still not upstream. I am also
> not certain if the support extends to Arc dGPUs.
Can you elaborate on this? Why wouldn't you just want to pass-through
a dGPU to a domU to use directly in the guest?
Are you sure? I didn't think intel's GVT solution was actually
SR-IOV. I think GVT is just a paravirtualized solution. That aside,
we are working on enabling virtio gpu with our GPUs on xen in addition
to domU passthrough.
>
> > APUs and platforms with integrated dGPUs
> > are a bit more complicated as they tend to have more platform
> > dependencies like ACPI tables and methods in order for the driver to
> > be able to initialize the hardware properly.
>
> Is Xen dom0/domU support for such GPUs being worked on? Is there an
> estimate as to when the needed support will be available upstream? This
> is mostly directed at Christian and other people who work for hardware
> vendors.
Yes, there are some minor fixes in the driver required which we'll be
sending out soon and we had to add some ACPI tables to the whitelist
in xen, but unfortunately the ACPI tables are AMD platform specific so
there has been pushback from the xen maintainers on accepting them
because they are not an official part of the ACPI spec.
Alex
>
> > Additionally, GPUs map a
> > lot of system memory so bounce buffers aren't really viable. You'll
> > really need IOMMU,
>
> Qubes OS already needs an IOMMU so that is not a concern.
> --
> Sincerely,
> Demi Marie Obenour (she/her/hers)
> Invisible Things Lab
More information about the dri-devel
mailing list