--- features: - | The Libvirt driver can now add a virtual IOMMU device to all created guests, when running on an x86 host and using the Q35 machine type or on AArch64. To enable this, provide `hw:viommu_model` in flavor extra spec or equivalent image metadata property `hw_viommu_model` and with the guest CPU architecture and OS allows, we will enable viommu in Libvirt driver. Support values intel|smmuv3|virtio|auto. Default to ``auto``. Which ``auto`` will automatically select ``virtio`` if Libvirt supports it, else ``intel`` on X86 (Q35) and ``smmuv3`` on AArch64. vIOMMU config will raise invalid exception if the guest architecture is neither X86 (Q35) or AArch64. Note that, enable vIOMMU might introduce significant performance overhead. You can see performance comparison table from `AMD vIOMMU session on KVM Forum 2021`_. For above reason, vIOMMU should only be enable for workflow that require it. .. _`AMD vIOMMU session on KVM Forum 2021`: https://static.sched.com/hosted_files/kvmforum2021/da/vIOMMU%20KVM%20Forum%202021%20-%20v4.pdf