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

Reply via email to