[Bug 290997] [vmm]: PCI passthrough on AMD Ryzen 8700G not supported yet? (Variable size IVHD type 0xf0 not supported)

From: <bugzilla-noreply_at_freebsd.org>
Date: Tue, 18 Nov 2025 14:03:42 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=290997

--- Comment #4 from Nils Beyer <nbe@vkf-renzel.de> ---
(In reply to Mark Johnston from comment #3)

dmesg shows nothing extraordinary:
----------------------------- SNIP -----------------------------
AMD-Vi: IVRS Info VAsize = 64 PAsize = 48 GVAsize = 2 flags:0
ivhd: ivhd0 already exists; skipping it
ivhd0: <AMD-Vi/IOMMU ivhd in mixed format> on acpi0
ivhd0: Unknown dev entry:0xf0
Variable size IVHD type 0xf0 not supported
ivhd0: Flag:30<IotlbSup,Coherent>
ivhd0: Features(type:0x40) MsiNumPPR = 0 PNBanks= 2 PNCounters= 4
ivhd0: Extended
features[31:0]:a2254afa<PPRSup,NXSup,GTSup,<b5>,IASup,GASup,PCSup> HATS = 0x2
GATS = 0x0 GLXSup = 0x1 SmiFSup = 0x1 SmiFRC = 0x1 GAMSup = 0x1 DualPortLogSup
= 0x2 DualEventLogSup = 0x2
ivhd0: Extended
features[62:32]:246577ef<USSup,PprOvrflwEarlySup,PPRAutoRspSup,BlKStopMrkSup,PerfOptSup,MsiCapMmioSup,GIOSup,EPHSup,InvIotlbSup>
Max PASID: 0x2f DevTblSegSup = 0x3 MarcSup = 0x1
ivhd0: supported paging level:7, will use only: 4
ivhd0: device [0x3 - 0xfffe] config:0
ivhd0: device [0xff00 - 0xffff] config:0
ivhd0: PCI cap 0x190b640f@0x40 feature:19<IOTLB,EFR,CapExt>
amdviiommu0: attempting to allocate 1 MSI vectors (4 supported)
msi: routing MSI IRQ 75 to local APIC 4 vector 51
amdviiommu0: using IRQ 75 for MSI
vgapci0: detached
ppt0 mem 0xf4000000-0xf4ffffff,0xf800000000-0xfbffffffff at device 0.0 on pci3
ppt0: attached
Nov 18 14:54:12 asbach pulseaudio[5512]: [] module-x11-xsmp.c: Failed to open
connection to session manager: None of the authentication protocols specified
are supported
Nov 18 14:54:12 asbach pulseaudio[5512]: [] module.c: Failed to load module
"module-x11-xsmp" (argument: "display=:1 xauthority=/tmp/xauth_VdxVIG
session_manager=local/asbach.renzel.net:/tmp/.ICE-unix/5501"): initialization
failed.
Nov 18 14:54:36 asbach su[5816]: nbe to root on /dev/pts/12
tap0: bpf attached
tap0: Ethernet address: 58:9c:fc:10:7a:30
tap0: promiscuous mode enabled
tap0: link state changed to UP
tap0: link state changed to DOWN
Nov 18 14:55:26 asbach su[6741]: nbe to root on /dev/pts/9
tap0: bpf attached
tap0: Ethernet address: 58:9c:fc:10:7a:30
tap0: promiscuous mode enabled
tap0: link state changed to UP
tap0: link state changed to DOWN
tap0: bpf attached
tap0: Ethernet address: 58:9c:fc:10:7a:30
tap0: promiscuous mode enabled
tap0: link state changed to UP
tap0: link state changed to DOWN
----------------------------- SNIP -----------------------------


pciconf looks good, too:
----------------------------- SNIP -----------------------------
#pciconf -l | grep ppt
ppt0@pci0:3:0:0:        class=0x030000 rev=0x00 hdr=0x00 vendor=0x8086
device=0xe20b subvendor=0x172f subdevice=0x0100
----------------------------- SNIP -----------------------------


But bhyve.log indeed says:
----------------------------- SNIP -----------------------------
bhyve: Warning: Unable to reuse host address of Graphics Stolen Memory. GPU
passthrough might not work properly.
bhyve: gvt_d_setup_gsm: Unknown IGD device. It's not supported yet!: No such
file or directory
bhyve: gvt_d_init: Unable to setup Graphics Stolen Memory
Device emulation initialization error: No such file or directory
----------------------------- SNIP -----------------------------


Resizable BAR is activated in UEFI - this Intel ARC GPU card needs it. SRV-IO
is activated  as well. As a counter example: when I passthrough my onboard-NIC,
bhyve works as expected.

So it probably has something to do because of a strange way the Intel GPU works
with PCIe and its memory access...

-- 
You are receiving this mail because:
You are the assignee for the bug.