From: Michal Privoznik <mprivozn@redhat.com>
The aw_bits member of the virDomainIOMMUDef is of type unsigned
int. However, in a few places
(virDomainIOMMUDefCheckABIStability(), virDomainIOMMUDefFormat(),
qemuBuildIOMMUCommandLine()) incorrect printf modifier is used.
Fix those places.
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
---
src/conf/domain_conf.c | 4 ++--
src/qemu/qemu_command.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 8b26de674e..9672168df9 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -22301,7 +22301,7 @@ virDomainIOMMUDefCheckABIStability(virDomainIOMMUDef *src,
}
if (src->aw_bits != dst->aw_bits) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("Target domain IOMMU device aw_bits value '%1$d' does not match source '%2$d'"),
+ _("Target domain IOMMU device aw_bits value '%1$u' does not match source '%2$u'"),
dst->aw_bits, src->aw_bits);
return false;
}
@@ -28638,7 +28638,7 @@ virDomainIOMMUDefFormat(virBuffer *buf,
virTristateSwitchTypeToString(iommu->iotlb));
}
if (iommu->aw_bits > 0) {
- virBufferAsprintf(&driverAttrBuf, " aw_bits='%d'",
+ virBufferAsprintf(&driverAttrBuf, " aw_bits='%u'",
iommu->aw_bits);
}
if (iommu->dma_translation != VIR_TRISTATE_SWITCH_ABSENT) {
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index 0de0a79b46..e81efdfde7 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -6295,7 +6295,7 @@ qemuBuildIOMMUCommandLine(virCommand *cmd,
"T:caching-mode", iommu->caching_mode,
"S:eim", qemuOnOffAuto(iommu->eim),
"T:device-iotlb", iommu->iotlb,
- "z:aw-bits", iommu->aw_bits,
+ "p:aw-bits", iommu->aw_bits,
"T:dma-translation", iommu->dma_translation,
NULL) < 0)
return -1;
--
2.52.0