Re: bhyve/passthru for Intel dGPU (ARC A380)?

From: Mario Marietto <marietto2008_at_gmail.com>
Date: Sat, 04 Jan 2025 20:33:28 UTC
Hi Peter,



Please make sure your GPU is booted in UEFI and not CSM mode. This can be
changed in the host BIOS.

Cheers.



On Sat, Jan 4, 2025 at 9:24 PM Peter Wood <peter@alastria.net> wrote:

> Happy new year all.
>
> I've been using bhyve happily for a year or two now, multiple machines
> with VT-d running happily passing SAS cards and USB cards into VMs.
>
> I've reached the point where I want to pass a GPU in for accelerated
> encoding/decoding/etc (scrypted, tdarr, jellyfin). I picked up an Intel ARC
> A380, as it's encoders/decoders are pretty decent for my use case - I'd
> also seen that there had been success with people using the iGPU's in Intel
> CPUs successfully.
>
> Unfortunately after attaching the GPUs PCI device to ppt, and attempting
> to start a VM with it attached, I'm greated by an error that seems to focus
> on iGPUs?
>
> /usr/sbin/bhyve -A -H -w -u -S -c 2 -m 8G -l com1,/dev/nmdm202B -l
> bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd,/usr/local/var/cache/bmd/k8s-worker-3.vars
> -s 0,hostbridge -s 1,lpc -s 2,nvme,/dev/zvol/vm/k8s-worker-3 -s
> 3,ahci-cd,/mnt/vm/isos/ubuntu-24.04-live-server-amd64.iso -s
> 5,virtio-net,tap9 -s 4,passthru,4/0/0 -s 6,fbuf,tcp=0.0.0.0:6007,w=1280,h=720,vga=io
> -s 7,xhci,tablet test
> bhyve: Warning: Unable to reuse host address of Graphics Stolen Memory.
> GPU passthrough might not work properly.
> bhyve: gvt_d_setup_opregion: Invalid OpRegion signature
> bhyve: gvt_d_init: Unable to setup OpRegion
> Device emulation initialization error: No such file or directory
>
> The machine is an AMD EPYC 7343 on a ASRock ROMED8-2T, it has a dedicated
> onboard GPU (attached to the BMC), which the BIOS is configured to
> encourage operating systems to use as the primary display - and sure enough
> the loader and BSD console are presented through the BMCs ASPEED AST2500.
>
> Digging through the freebsd source tree, it appears that that pci_gvt-d.c
> is responsible for this, if it's Intel and a Display then attempt the set
> up of graphics memory.
>
> https://github.com/freebsd/freebsd-src/blob/b662ca1d6cd82044c6cb79075e1830b97594bef3/usr.sbin/bhyve/amd64/pci_gvt-d.c#L44
>
> Has anyone experimented with this? Can I just patch this out, rebuild
> bhyve and expect a chance of success?
>
> Cheers,
>
> P.
> --
> *Peter Wood*
> peter@alastria.net
>
>

-- 
Mario.