From 804791343e4ec02c66b8218715e206c1e94bdc07 Mon Sep 17 00:00:00 2001 From: Nathan Chen Date: Tue, 2 Dec 2025 18:58:50 +0000 Subject: [PATCH 1/2] NVIDIA: SAUCE: qemu: Use pci_bus to identify multi-smmuv3 model Use presence of non-negative pci_bus to identify multi-smmuv3 IOMMU model, instead of the niommus attribute. This allows for specifying a single arm-smmuv3 on the qemu command line, instead of both the virt-machine smmuv3 and arm-smmuv3 being specified at the same time. Signed-off-by: Nathan Chen (cherry-picked from commit 178bf386450c99b43879e69f810ef18db9075fba https://github.com/NathanChenNVIDIA/libvirt/commits/single-smmuv3-12-25/) Link: https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/thread/XPGZP3XO7VX64JWGWP45UMTLUDDCYADJ/ Signed-off-by: Nathan Chen --- src/qemu/qemu_command.c | 2 +- src/qemu/qemu_postparse.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index dd949c82bd..580d9184ba 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -7347,7 +7347,7 @@ qemuBuildMachineCommandLine(virCommand *cmd, if (qemuAppendDomainFeaturesMachineParam(&buf, def, qemuCaps) < 0) return -1; - if (def->niommus == 1) { + if (def->iommus && def->iommus[0]->pci_bus < 0) { switch (def->iommus[0]->model) { case VIR_DOMAIN_IOMMU_MODEL_SMMUV3: virBufferAddLit(&buf, ",iommu=smmuv3"); diff --git a/src/qemu/qemu_postparse.c b/src/qemu/qemu_postparse.c index 211070ee40..a52c64c9c6 100644 --- a/src/qemu/qemu_postparse.c +++ b/src/qemu/qemu_postparse.c @@ -1559,7 +1559,7 @@ qemuDomainDefEnableDefaultFeatures(virDomainDef *def, * domain already has IOMMU without inremap. This will be fixed in * qemuDomainIOMMUDefPostParse() but there domain definition can't be * modified so change it now. */ - if (def->iommus && def->niommus == 1 && + if (def->iommus && def->iommus[0]->pci_bus < 0 && (def->iommus[0]->intremap == VIR_TRISTATE_SWITCH_ON || qemuDomainNeedsIOMMUWithEIM(def)) && def->features[VIR_DOMAIN_FEATURE_IOAPIC] == VIR_DOMAIN_IOAPIC_NONE) { From 144124eabf033bb453ec832407da24201b223d02 Mon Sep 17 00:00:00 2001 From: Nathan Chen Date: Tue, 2 Dec 2025 19:09:08 +0000 Subject: [PATCH 2/2] NVIDIA: [Packaging]: Update changelog for version 11.9.0+nvidia3-1 Signed-off-by: Nathan Chen --- debian/changelog | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/debian/changelog b/debian/changelog index d62bf3ba02..50386d52ca 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +libvirt (11.9.0+nvidia3-1) noble; urgency=medium + + * NVIDIA: SAUCE: qemu: Use pci_bus to identify multi-smmuv3 model + + -- Nathan Chen Tue, 02 Dec 2025 11:08:48 -0800 + libvirt (11.9.0+nvidia2-1) noble; urgency=medium * Update vEGM series to match RFCv3.