On Wed, Jan 21, 2026 at 17:27:18 +0100, Michal Privoznik via Devel wrote:
From: Michal Privoznik <mprivozn@redhat.com>
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 <mprivozn@redhat.com> --- 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;