summaryrefslogtreecommitdiff
path: root/releasenotes/notes
diff options
context:
space:
mode:
authorStephen Finucane <stephenfin@redhat.com>2022-02-23 16:14:03 +0000
committerricolin <rlin@vexxhost.com>2022-09-01 04:50:16 +0800
commit14e3b352c24b2a1fe54ba13a733cf6e7989215cc (patch)
tree5dcc7b9dd9f9249b1f4d77d6c603834d851a8c8c /releasenotes/notes
parent733a87e6126e4da8261eada74ba2cd0ec55f8a72 (diff)
downloadnova-14e3b352c24b2a1fe54ba13a733cf6e7989215cc.tar.gz
libvirt: Add vIOMMU device to guest
Implementation for BP/libvirt-viommu-device. With provide `hw:viommu_model` property to extra_specs or `hw_viommu_model` to image property. will enable viommu to libvirt guest. [1] https://www.berrange.com/posts/2017/02/16/setting-up-a-nested-kvm-guest-for-developing-testing-pci-device-assignment-with-numa/ [2] https://review.opendev.org/c/openstack/nova-specs/+/840310 Implements: blueprint libvirt-viommu-device Change-Id: Ief9c550292788160433a28a7a1c36ba38a6bc849 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Diffstat (limited to 'releasenotes/notes')
-rw-r--r--releasenotes/notes/guest-iommu-device-4795c3a060aca424.yaml21
1 files changed, 21 insertions, 0 deletions
diff --git a/releasenotes/notes/guest-iommu-device-4795c3a060aca424.yaml b/releasenotes/notes/guest-iommu-device-4795c3a060aca424.yaml
new file mode 100644
index 0000000000..314c2c0ffe
--- /dev/null
+++ b/releasenotes/notes/guest-iommu-device-4795c3a060aca424.yaml
@@ -0,0 +1,21 @@
+---
+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 comparision 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