[libvirt PATCH v2 6/7] conf: reject some attributes not applicable to intel IOMMU

Ján Tomko via Devel posted 7 patches 5 months, 4 weeks ago
[libvirt PATCH v2 6/7] conf: reject some attributes not applicable to intel IOMMU
Posted by Ján Tomko via Devel 5 months, 4 weeks ago
From: Ján Tomko <jtomko@redhat.com>

Signed-off-by: Ján Tomko <jtomko@redhat.com>
---
 src/conf/domain_validate.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c
index b9a6740437..b28af7fa56 100644
--- a/src/conf/domain_validate.c
+++ b/src/conf/domain_validate.c
@@ -3095,6 +3095,15 @@ virDomainIOMMUDefValidate(const virDomainIOMMUDef *iommu)
         break;
 
     case VIR_DOMAIN_IOMMU_MODEL_INTEL:
+        if (iommu->pt != VIR_TRISTATE_SWITCH_ABSENT ||
+            iommu->xtsup != VIR_TRISTATE_SWITCH_ABSENT) {
+            virReportError(VIR_ERR_XML_ERROR,
+                           _("iommu model '%1$s' doesn't support some additional attributes"),
+                           virDomainIOMMUModelTypeToString(iommu->model));
+            return -1;
+        }
+        break;
+
     case VIR_DOMAIN_IOMMU_MODEL_LAST:
         break;
     }
-- 
2.49.0
Re: [libvirt PATCH v2 6/7] conf: reject some attributes not applicable to intel IOMMU
Posted by Peter Krempa via Devel 5 months, 3 weeks ago
On Wed, Jun 18, 2025 at 12:46:22 +0200, Ján Tomko via Devel wrote:
> From: Ján Tomko <jtomko@redhat.com>
> 
> Signed-off-by: Ján Tomko <jtomko@redhat.com>
> ---
>  src/conf/domain_validate.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c
> index b9a6740437..b28af7fa56 100644
> --- a/src/conf/domain_validate.c
> +++ b/src/conf/domain_validate.c
> @@ -3095,6 +3095,15 @@ virDomainIOMMUDefValidate(const virDomainIOMMUDef *iommu)
>          break;
>  
>      case VIR_DOMAIN_IOMMU_MODEL_INTEL:
> +        if (iommu->pt != VIR_TRISTATE_SWITCH_ABSENT ||
> +            iommu->xtsup != VIR_TRISTATE_SWITCH_ABSENT) {
> +            virReportError(VIR_ERR_XML_ERROR,
> +                           _("iommu model '%1$s' doesn't support some additional attributes"),
> +                           virDomainIOMMUModelTypeToString(iommu->model));
> +            return -1;
> +        }
> +        break;

Same as with the 'amd' validator, the error is not very helpful.

Also this really should be squashed into 5/7.

With the above:
Reviewed-by: Peter Krempa <pkrempa@redhat.com>