GPU device assignment to KVM guest — VFIO on host OK, QEMU fails (error getting device from group: Invalid argument)

  • Environment: Ubuntu aarch64 on DGX Spark (integrated GB10-class GPU), recent 6.17.x *-nvidia kernel, QEMU 8.x + libvirt. Goal: pass the integrated GPU through to a KVM guest (OpenShift SNO + NVIDIA GPU Operator on the guest).

  • What works on the host: GPU bound to vfio-pci; /dev/vfio/<N> present; IOMMU group contains only this GPU; virsh nodedev shows vfio-pci.

  • What fails: Starting the guest with the GPU attached as a PCI hostdev → QEMU reports: vfio: error getting device from group <N>: Invalid argument (same pattern as this thread).

  • Extra: Tried nvgrace_gpu_vfio_pci — our GPU’s PCI ID is not in modinfo aliases; probe returns -62; with vfio-pci the host still looks fine but QEMU fails as above.

    Ask (NVIDIA / DGX Spark):
    Is assigning the integrated GPU on DGX Spark to a KVM/QEMU guest (device passthrough from the Ubuntu host) a supported or documented configuration for this product? If yes, what NVIDIA-recommended stack (kernel, driver variant, firmware, known limitations) should we use? If it is not supported on Spark, please state that clearly. Exact BDF, PCI IDs, and logs can be shared privately if engineering needs them.

Hey there.

Real quick I did contact Asus and after a lot of back and forth it does seem like it will just not do GPU passthrough. What I did was go for a machine with the AMD 8060s chip it has 128GB unified memory as well and is x86_64 so it’s not limited to what can run on ARM.

A bit more elbow grease to get running since AI assumes Nvidia but that’s what worked for me.
I don’t mind having to sweat a bit for it so to speak.