On Fri, Jun 04, 2021 at 12:24:08PM +0200, Jean-Philippe Brucker wrote: > I think once it binds a device to an IOASID fd, QEMU will want to probe > what hardware features are available before going further with the vIOMMU > setup (is there PASID, PRI, which page table formats are supported, I think David's point was that qemu should be told what vIOMMU it is emulating exactly (right down to what features it has) and then the goal is simply to match what the vIOMMU needs with direct HW support via /dev/ioasid and fall back to SW emulation when not possible. If qemu wants to have some auto-configuration: 'pass host IOMMU capabilities' similar to the CPU flags then qemu should probe the /dev/ioasid - and maybe we should just return some highly rolled up "this is IOMMU HW ID ARM SMMU vXYZ" out of some query to guide qemu in doing this. Jason