On 7/18/2026 4:51 AM, BALATON Zoltan wrote: > On Sat, 18 Jul 2026, Cédric Le Goater wrote: >> On 7/18/26 06:52, Pierrick Bouvier wrote: >>> On 7/17/2026 9:14 PM, Michael Tokarev wrote: >>>> On 7/17/26 22:40, Pierrick Bouvier wrote: >>>> >>>>> https://gitlab.com/qemu-project/qemu/-/blob/master/hw/vfio/Kconfig? >>>>> ref_type=heads#L5 >>>>> >>>>> ``` >>>>> config VFIO >>>>> bool >>>>> depends on LINUX >>>>> ``` >>>>> >>>>> Incorrect, and it should exclude Linux hosts not supporting VFIO. >>>>> At least sparc64 to fix the current issue. >>>> >>>> Shouldn't there be "depends on LINUX & KVM" ? At least, this >>>> way we can do --disable-kvm and it will work. >>>> >>> >>> I think it's a safe choice, but not sure if we are supposed to be able >>> to use the exotic combination of vfio with tcg also. Maybe it doesn't >>> make any sense technically though, I don't know the arcane of vfio. >> >> VFIO works in some heterogeneous configurations, aarch64 TCG running >> on an x86 host for instance. The opposite doesn't. ppc64 TCG on an x86 >> used to work. The limitations primarily stem from architectural >> differences in the host/guest memory mode, CPU/IOMMU address spaces, >> assumptions, etc. >> >>> @Cédric, Any idea of which matrix of host/target is supposed to be >>> supported? >> >> Overall, heterogeneous TCG configurations happen to work by accident. >> I would not consider them supported. > > VFIO (vfio-pci) works with PPC TCG and is used for passing through cards > including GPU to emulated AmigaNG machines (maybe also mac99). Please do > not break that. There are some quirks mostly with GPUs, see https:// > qmiga.codeberg.page/qemu_vfio.html but it works and used by some people. >
👍 In this case, and we want to ensure we don't break any existing workflow we might now be aware of, a safe choice could be to restrict VFIO to all hosts that supports KVM. This is different from CONFIG_KVM, which is only enabled for new hosts. @Michael: You'll need to detect kvm hosts (see meson.build for kvm_targets), add a host config CONFIG_KVM_HOST, and use that for CONFIG_VFIO definition. This should restrict VFIO to host providing KVM, without limiting which target is ran. > Regards, > BALATON Zoltan Regards, Pierrick
