On Wed, Jan 21, 2026 at 17:27:18 +0100, Michal Privoznik via Devel wrote:
> From: Michal Privoznik <[email protected]>
> 
> Introduced in QEMU commit of v9.0.0-rc0~9^2~7 the virtio-iommu
> device is also capable of using different addres width. The
> corresponding attribute is also called 'aw-bits', just like in
> case of intel-iommu. Wire up the missing pieces.
> 
> Signed-off-by: Michal Privoznik <[email protected]>
> ---
>  docs/formatdomain.rst                                    | 2 +-
>  src/conf/domain_validate.c                               | 9 +++++++--
>  src/qemu/qemu_validate.c                                 | 7 +++++--
>  .../virtio-iommu-aarch64.aarch64-latest.xml              | 1 +
>  tests/qemuxmlconfdata/virtio-iommu-aarch64.xml           | 4 +++-
>  .../virtio-iommu-dma-translation.x86_64-latest.err       | 2 +-
>  6 files changed, 18 insertions(+), 7 deletions(-)

[...]


> diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c
> index 4482203087..440f23d726 100644
> --- a/src/conf/domain_validate.c
> +++ b/src/conf/domain_validate.c
> @@ -3206,14 +3206,19 @@ virDomainIOMMUDefValidate(const virDomainIOMMUDef 
> *iommu)
>              iommu->caching_mode != VIR_TRISTATE_SWITCH_ABSENT ||
>              iommu->eim != VIR_TRISTATE_SWITCH_ABSENT ||
>              iommu->iotlb != VIR_TRISTATE_SWITCH_ABSENT ||
> -            iommu->aw_bits != 0 ||
>              iommu->dma_translation != VIR_TRISTATE_SWITCH_ABSENT ||
>              iommu->pci_bus >= 0) {
>              virReportError(VIR_ERR_XML_ERROR,
> -                           _("iommu model '%1$s' doesn't support additional 
> attributes"),
> +                           _("iommu model '%1$s' doesn't support some 
> additional attributes"),
>                             virDomainIOMMUModelTypeToString(iommu->model));
>              return -1;
>          }
> +

Do you have any justification that you could put into a comment here for
the values?

> +        if (iommu->aw_bits != 0 && (iommu->aw_bits < 32 || iommu->aw_bits > 
> 64)) {
> +            virReportError(VIR_ERR_XML_ERROR, "%s",
> +                           _("aw-bits must be within [32,64]"));
> +            return -1;
> +        }
>          break;

Reply via email to