mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
qemu: Move qemuDomainGetSCSIControllerModel()
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>
This commit is contained in:
parent
89a8862d42
commit
19dc73d16e
@ -4104,6 +4104,43 @@ qemuDomainDefAddDefaultAudioBackend(virQEMUDriver *driver,
|
|||||||
return 0;
|
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
|
static int
|
||||||
qemuDomainDefAddDefaultDevices(virQEMUDriver *driver,
|
qemuDomainDefAddDefaultDevices(virQEMUDriver *driver,
|
||||||
virDomainDef *def,
|
virDomainDef *def,
|
||||||
|
@ -838,6 +838,9 @@ bool qemuDomainHasBuiltinESP(const virDomainDef *def);
|
|||||||
bool qemuDomainNeedsFDC(const virDomainDef *def);
|
bool qemuDomainNeedsFDC(const virDomainDef *def);
|
||||||
bool qemuDomainSupportsPCI(const virDomainDef *def);
|
bool qemuDomainSupportsPCI(const virDomainDef *def);
|
||||||
bool qemuDomainSupportsPCIMultibus(const virDomainDef *def);
|
bool qemuDomainSupportsPCIMultibus(const virDomainDef *def);
|
||||||
|
int qemuDomainGetSCSIControllerModel(const virDomainDef *def,
|
||||||
|
const virDomainControllerDef *cont,
|
||||||
|
virQEMUCaps *qemuCaps);
|
||||||
|
|
||||||
void qemuDomainUpdateCurrentMemorySize(virDomainObj *vm);
|
void qemuDomainUpdateCurrentMemorySize(virDomainObj *vm);
|
||||||
|
|
||||||
|
@ -38,42 +38,6 @@ VIR_LOG_INIT("qemu.qemu_domain_address");
|
|||||||
#define VIO_ADDR_TPM 0x4000ul
|
#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
|
static int
|
||||||
qemuDomainAssignVirtioSerialAddresses(virDomainDef *def)
|
qemuDomainAssignVirtioSerialAddresses(virDomainDef *def)
|
||||||
{
|
{
|
||||||
|
@ -24,10 +24,6 @@
|
|||||||
#include "qemu_conf.h"
|
#include "qemu_conf.h"
|
||||||
#include "qemu_capabilities.h"
|
#include "qemu_capabilities.h"
|
||||||
|
|
||||||
int qemuDomainGetSCSIControllerModel(const virDomainDef *def,
|
|
||||||
const virDomainControllerDef *cont,
|
|
||||||
virQEMUCaps *qemuCaps);
|
|
||||||
|
|
||||||
int qemuDomainAssignAddresses(virDomainDef *def,
|
int qemuDomainAssignAddresses(virDomainDef *def,
|
||||||
virQEMUCaps *qemuCaps,
|
virQEMUCaps *qemuCaps,
|
||||||
virQEMUDriver *driver,
|
virQEMUDriver *driver,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user