]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: Move qemuDomainGetSCSIControllerModel()
authorAndrea Bolognani <abologna@redhat.com>
Fri, 19 Jan 2024 14:54:06 +0000 (15:54 +0100)
committerAndrea Bolognani <abologna@redhat.com>
Tue, 30 Jan 2024 09:58:13 +0000 (10:58 +0100)
It has nothing to do with assigning addresses, so it makes more
sense to have it in qemu_domain.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
src/qemu/qemu_domain.c
src/qemu/qemu_domain.h
src/qemu/qemu_domain_address.c
src/qemu/qemu_domain_address.h

index 6c6e98e04727a13154c5e25a67f9d940a368a9f7..dad89954d9e7581b11a583ea437d1fff6cf72b49 100644 (file)
@@ -4104,6 +4104,43 @@ qemuDomainDefAddDefaultAudioBackend(virQEMUDriver *driver,
     return 0;
 }
 
+
+/**
+ * @def: Domain definition
+ * @cont: Domain controller def
+ * @qemuCaps: qemu capabilities
+ *
+ * If the controller model is already defined, return it immediately;
+ * otherwise, based on the @qemuCaps return a default model value.
+ *
+ * Returns model on success, -1 on failure with error set.
+ */
+int
+qemuDomainGetSCSIControllerModel(const virDomainDef *def,
+                                 const virDomainControllerDef *cont,
+                                 virQEMUCaps *qemuCaps)
+{
+    if (cont->model > 0)
+        return cont->model;
+
+    if (qemuDomainIsPSeries(def))
+        return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_IBMVSCSI;
+    if (ARCH_IS_S390(def->os.arch))
+        return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI;
+    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_SCSI_LSI))
+        return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LSILOGIC;
+    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_SCSI))
+        return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI;
+    if (qemuDomainHasBuiltinESP(def))
+        return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_NCR53C90;
+
+    virReportError(VIR_ERR_INTERNAL_ERROR,
+                   _("Unable to determine model for SCSI controller idx=%1$d"),
+                   cont->idx);
+    return -1;
+}
+
+
 static int
 qemuDomainDefAddDefaultDevices(virQEMUDriver *driver,
                                virDomainDef *def,
index 6ba3f10e8d64687a3d39748b6ca473fd1c394dc1..98c188cc8f6fb5cd312759da11b7edf57ed8729e 100644 (file)
@@ -838,6 +838,9 @@ bool qemuDomainHasBuiltinESP(const virDomainDef *def);
 bool qemuDomainNeedsFDC(const virDomainDef *def);
 bool qemuDomainSupportsPCI(const virDomainDef *def);
 bool qemuDomainSupportsPCIMultibus(const virDomainDef *def);
+int qemuDomainGetSCSIControllerModel(const virDomainDef *def,
+                                     const virDomainControllerDef *cont,
+                                     virQEMUCaps *qemuCaps);
 
 void qemuDomainUpdateCurrentMemorySize(virDomainObj *vm);
 
index 0a7273dc07385126fd346d4c3a4556c9ab40c0f6..49fd4d454d10334c62a7a82776de1b4b7ec77d41 100644 (file)
@@ -38,42 +38,6 @@ VIR_LOG_INIT("qemu.qemu_domain_address");
 #define VIO_ADDR_TPM 0x4000ul
 
 
-/**
- * @def: Domain definition
- * @cont: Domain controller def
- * @qemuCaps: qemu capabilities
- *
- * If the controller model is already defined, return it immediately;
- * otherwise, based on the @qemuCaps return a default model value.
- *
- * Returns model on success, -1 on failure with error set.
- */
-int
-qemuDomainGetSCSIControllerModel(const virDomainDef *def,
-                                 const virDomainControllerDef *cont,
-                                 virQEMUCaps *qemuCaps)
-{
-    if (cont->model > 0)
-        return cont->model;
-
-    if (qemuDomainIsPSeries(def))
-        return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_IBMVSCSI;
-    if (ARCH_IS_S390(def->os.arch))
-        return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI;
-    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_SCSI_LSI))
-        return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LSILOGIC;
-    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_SCSI))
-        return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI;
-    if (qemuDomainHasBuiltinESP(def))
-        return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_NCR53C90;
-
-    virReportError(VIR_ERR_INTERNAL_ERROR,
-                   _("Unable to determine model for SCSI controller idx=%1$d"),
-                   cont->idx);
-    return -1;
-}
-
-
 static int
 qemuDomainAssignVirtioSerialAddresses(virDomainDef *def)
 {
index 0ac6285f2ed95b1f34e862fcb4f7253e010d1550..78fcd74234c95bc47c9cfe30bdad25706825ee17 100644 (file)
 #include "qemu_conf.h"
 #include "qemu_capabilities.h"
 
-int qemuDomainGetSCSIControllerModel(const virDomainDef *def,
-                                     const virDomainControllerDef *cont,
-                                     virQEMUCaps *qemuCaps);
-
 int qemuDomainAssignAddresses(virDomainDef *def,
                               virQEMUCaps *qemuCaps,
                               virQEMUDriver *driver,