This capability tracks whether intel-iommu device has svm attribute.

Signed-off-by: Zhenzhong Duan <[email protected]>
---
 src/qemu/qemu_capabilities.c                          | 2 ++
 src/qemu/qemu_capabilities.h                          | 1 +
 tests/qemucapabilitiesdata/caps_11.0.0_x86_64+sgx.xml | 1 +
 tests/qemucapabilitiesdata/caps_11.0.0_x86_64.xml     | 1 +
 tests/qemucapabilitiesdata/caps_11.1.0_x86_64.xml     | 1 +
 5 files changed, 6 insertions(+)

diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index 606c5385e9..3c3a196b23 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -781,6 +781,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
 
               /* 505 */
               "intel-iommu.pasid-bits", /* QEMU_CAPS_INTEL_IOMMU_PASID_BITS */
+              "intel-iommu.svm", /* QEMU_CAPS_INTEL_IOMMU_SVM */
     );
 
 
@@ -1627,6 +1628,7 @@ static struct virQEMUCapsDevicePropsFlags 
virQEMUCapsDevicePropsIntelIOMMU[] = {
     { "scalable-mode", QEMU_CAPS_INTEL_IOMMU_SCALABLE_MODE, NULL },
     { "fsts", QEMU_CAPS_INTEL_IOMMU_FSTS, NULL },
     { "pasid-bits", QEMU_CAPS_INTEL_IOMMU_PASID_BITS, NULL },
+    { "svm", QEMU_CAPS_INTEL_IOMMU_SVM, NULL },
 };
 
 static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsMCH[] = {
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
index 30af10da79..02ea9403a2 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
@@ -755,6 +755,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for 
syntax-check */
 
     /* 505 */
     QEMU_CAPS_INTEL_IOMMU_PASID_BITS, /* intel-iommu.pasid-bits */
+    QEMU_CAPS_INTEL_IOMMU_SVM, /* intel-iommu.svm */
 
     QEMU_CAPS_LAST /* this must always be the last item */
 } virQEMUCapsFlags;
diff --git a/tests/qemucapabilitiesdata/caps_11.0.0_x86_64+sgx.xml 
b/tests/qemucapabilitiesdata/caps_11.0.0_x86_64+sgx.xml
index 108f4b0b86..74628b3c0c 100644
--- a/tests/qemucapabilitiesdata/caps_11.0.0_x86_64+sgx.xml
+++ b/tests/qemucapabilitiesdata/caps_11.0.0_x86_64+sgx.xml
@@ -222,6 +222,7 @@
   <flag name='query-block-flat'/>
   <flag name='amd-iommu.xtsup'/>
   <flag name='blockdev-mirror.target-is-zero'/>
+  <flag name='intel-iommu.svm'/>
   <version>11000000</version>
   <microcodeVersion>43100286</microcodeVersion>
   <package>v11.0.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_11.0.0_x86_64.xml 
b/tests/qemucapabilitiesdata/caps_11.0.0_x86_64.xml
index 29fdaf20d8..fb01666a16 100644
--- a/tests/qemucapabilitiesdata/caps_11.0.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_11.0.0_x86_64.xml
@@ -221,6 +221,7 @@
   <flag name='query-block-flat'/>
   <flag name='amd-iommu.xtsup'/>
   <flag name='blockdev-mirror.target-is-zero'/>
+  <flag name='intel-iommu.svm'/>
   <version>11000000</version>
   <microcodeVersion>43100286</microcodeVersion>
   <package>v11.0.0</package>
diff --git a/tests/qemucapabilitiesdata/caps_11.1.0_x86_64.xml 
b/tests/qemucapabilitiesdata/caps_11.1.0_x86_64.xml
index 38a782b2e3..aa66d10a6b 100644
--- a/tests/qemucapabilitiesdata/caps_11.1.0_x86_64.xml
+++ b/tests/qemucapabilitiesdata/caps_11.1.0_x86_64.xml
@@ -227,6 +227,7 @@
   <flag name='intel-iommu.scalable-mode'/>
   <flag name='intel-iommu.fsts'/>
   <flag name='intel-iommu.pasid-bits'/>
+  <flag name='intel-iommu.svm'/>
   <version>11001000</version>
   <microcodeVersion>43100287</microcodeVersion>
   <package>v11.1.0</package>
-- 
2.52.0

Reply via email to