]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: Move qemuDomainSupportsPCIMultibus()
authorAndrea Bolognani <abologna@redhat.com>
Wed, 17 Jan 2024 08:39:48 +0000 (09:39 +0100)
committerAndrea Bolognani <abologna@redhat.com>
Wed, 17 Jan 2024 18:28:41 +0000 (19:28 +0100)
It belongs next to qemuDomainSupportsPCI().

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/qemu/qemu_alias.c
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
src/qemu/qemu_command.c
src/qemu/qemu_domain.c
src/qemu/qemu_domain.h

index e58c488f8ac9e2105f6396a8fa6700e99e46a52b..686b5a4d80fad8a49f5163165746d79ab2cdb84e 100644 (file)
@@ -142,7 +142,7 @@ qemuAssignDeviceControllerAlias(virDomainDef *domainDef,
         return;
 
     if (controller->type == VIR_DOMAIN_CONTROLLER_TYPE_PCI) {
-        if (!virQEMUCapsHasPCIMultiBus(domainDef)) {
+        if (!qemuDomainSupportsPCIMultibus(domainDef)) {
             /* qemus that don't support multiple PCI buses have
              * hardcoded the name of their single PCI controller as
              * "pci".
index dc192b3729825c4b14259ad0952c7b3337a2555b..98faf3f1d318c1c7cb7865b003d6dd5505731094 100644 (file)
@@ -2059,34 +2059,6 @@ virQEMUCapsGet(virQEMUCaps *qemuCaps,
 }
 
 
-bool virQEMUCapsHasPCIMultiBus(const virDomainDef *def)
-{
-    /* x86_64 and i686 support PCI-multibus on all machine types
-     * since forever */
-    if (ARCH_IS_X86(def->os.arch))
-        return true;
-
-    /* PPC supports multibus on all machine types which have pci since qemu-2.0.0 */
-    if (def->os.arch == VIR_ARCH_PPC ||
-        ARCH_IS_PPC64(def->os.arch)) {
-        return true;
-    }
-
-    /* S390 supports PCI-multibus. */
-    if (ARCH_IS_S390(def->os.arch))
-        return true;
-
-    /* If the virt machine, both on ARM and RISC-V, supports PCI,
-     * then it also supports multibus */
-    if (qemuDomainIsARMVirt(def) ||
-        qemuDomainIsRISCVVirt(def)) {
-        return true;
-    }
-
-    return false;
-}
-
-
 const char *virQEMUCapsGetBinary(virQEMUCaps *qemuCaps)
 {
     return qemuCaps->binary;
index 038ab0a4df4e10a4562091996a93d86f4f86a54a..4693e2f4de0f5fb476f58f80dd3929bfd1217eba 100644 (file)
@@ -701,8 +701,6 @@ bool virQEMUCapsGet(virQEMUCaps *qemuCaps,
 
 void virQEMUCapsInitProcessCapsInterlock(virQEMUCaps *qemuCaps);
 
-bool virQEMUCapsHasPCIMultiBus(const virDomainDef *def);
-
 bool virQEMUCapsSupportsVmport(virQEMUCaps *qemuCaps,
                                const virDomainDef *def);
 
index 5c067b8554d1bfaf5647d59cf82f92f54a22ff9b..b8f071ff2a97f6a4799bbb3f04a4ed5609e68cb2 100644 (file)
@@ -386,7 +386,7 @@ qemuBuildDeviceAddressPCIGetBus(const virDomainDef *domainDef,
                  * */
                 if (cont->model == VIR_DOMAIN_CONTROLLER_MODEL_PCI_ROOT &&
                     contTargetIndex <= 0) {
-                    if (virQEMUCapsHasPCIMultiBus(domainDef))
+                    if (qemuDomainSupportsPCIMultibus(domainDef))
                         contAlias = "pci.0";
                     else
                         contAlias = "pci";
index 80281d9b482365b5dd392cf0d9824212bb18b201..ef7506258a7595666d8b8d741cf4d2591edcbe2a 100644 (file)
@@ -9085,6 +9085,35 @@ qemuDomainSupportsPCI(const virDomainDef *def)
 }
 
 
+bool
+qemuDomainSupportsPCIMultibus(const virDomainDef *def)
+{
+    /* x86_64 and i686 support PCI-multibus on all machine types
+     * since forever */
+    if (ARCH_IS_X86(def->os.arch))
+        return true;
+
+    /* PPC supports multibus on all machine types which have pci since qemu-2.0.0 */
+    if (def->os.arch == VIR_ARCH_PPC ||
+        ARCH_IS_PPC64(def->os.arch)) {
+        return true;
+    }
+
+    /* S390 supports PCI-multibus. */
+    if (ARCH_IS_S390(def->os.arch))
+        return true;
+
+    /* If the virt machine, both on ARM and RISC-V, supports PCI,
+     * then it also supports multibus */
+    if (qemuDomainIsARMVirt(def) ||
+        qemuDomainIsRISCVVirt(def)) {
+        return true;
+    }
+
+    return false;
+}
+
+
 static int
 qemuDomainDefValidateMemoryHotplugDevice(const virDomainMemoryDef *mem,
                                          const virDomainDef *def)
index 49e0fcf4989f5dc989a428110f775152dbdd6b59..b4512cc80e250d72a898fdfd1b149fdf1df52772 100644 (file)
@@ -835,6 +835,7 @@ bool qemuDomainHasBuiltinIDE(const virDomainDef *def);
 bool qemuDomainHasBuiltinESP(const virDomainDef *def);
 bool qemuDomainNeedsFDC(const virDomainDef *def);
 bool qemuDomainSupportsPCI(const virDomainDef *def);
+bool qemuDomainSupportsPCIMultibus(const virDomainDef *def);
 
 void qemuDomainUpdateCurrentMemorySize(virDomainObj *vm);