On Fri, 24 Oct 2025 at 09:46, Shameer Kolothum <[email protected]> wrote: > > The virt machine now supports creating multiple SMMUv3 instances, each > associated with a separate PCIe root complex. > > Update the documentation with an example. > > Signed-off-by: Shameer Kolothum <[email protected]>
Thanks. I have some minor word-smithing tweaks, but I'll just apply them to this patch in target-arm.next if you're OK with that: --- a/docs/system/arm/virt.rst +++ b/docs/system/arm/virt.rst @@ -224,23 +224,24 @@ SMMU configuration """""""""""""""""" Machine-wide SMMUv3 IOMMU - See the machine-specific ``iommu`` option above. This allows specifying - a single, machine-wide SMMUv3 instance that applies to all devices in - the PCIe topology. + Setting the machine-specific option ``iommu=smmuv3`` causes QEMU to + create a single, machine-wide SMMUv3 instance that applies to all + devices in the PCIe topology. For information about selectively bypassing devices, refer to ``docs/bypass-iommu.txt``. User-creatable SMMUv3 devices - Allows creating multiple user-defined SMMUv3 devices, each associated - with a separate PCIe root complex. This is only permitted if the - machine-wide SMMUv3 (``iommu=smmuv3``) option is not used. + You can use the ``-device arm-smmuv3`` option to create multiple + user-defined SMMUv3 devices, each associated with a separate PCIe + root complex. This is only permitted if the machine-wide SMMUv3 + (``iommu=smmuv3``) option is not used. Each ``arm-smmuv3`` device + uses the ``primary-bus`` sub-option to specify which PCIe root + complex it is associated with. This model is useful when you want to mirror a host configuration where each NUMA node typically has its own SMMU, allowing the VM topology to - align more closely with the host’s hardware layout. Supporting multiple - SMMUv3 instances is also a prerequisite for future accelerated SMMUv3 - support. + align more closely with the host’s hardware layout. Example:: (I deleted the sentence about SMMU acceleration because that isn't upstream yet. When it lands then we can update the docs if the version of it that lands can't support acceleration of a single machine-wide accelerator.) thanks -- PMM
