From f8f020da0a72e4262784eff6325b155ffd03ca37 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Thu, 13 Feb 2014 10:41:01 +0100 Subject: [PATCH] conf: Move qemuDiskGetActualType to virDomainDiskGetActualType All the data for getting the actual type is present in the domain config. There is no need to have this function private to the qemu driver and it will be re-used later in other parts of libvirt --- src/conf/domain_conf.c | 10 ++++++++++ src/conf/domain_conf.h | 1 + src/libvirt_private.syms | 1 + src/qemu/qemu_command.c | 6 +++--- src/qemu/qemu_conf.c | 10 ---------- src/qemu/qemu_conf.h | 2 -- src/qemu/qemu_driver.c | 6 +++--- 7 files changed, 18 insertions(+), 18 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index f6065ed36b..fc9615f9ea 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -1345,6 +1345,16 @@ error: } +int +virDomainDiskGetActualType(virDomainDiskDefPtr def) +{ + if (def->type == VIR_DOMAIN_DISK_TYPE_VOLUME && def->srcpool) + return def->srcpool->actualtype; + + return def->type; +} + + void virDomainControllerDefFree(virDomainControllerDefPtr def) { if (!def) diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 4895e814d0..24cbec3374 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -2252,6 +2252,7 @@ void virDomainDiskHostDefClear(virDomainDiskHostDefPtr def); void virDomainDiskHostDefFree(size_t nhosts, virDomainDiskHostDefPtr hosts); virDomainDiskHostDefPtr virDomainDiskHostDefCopy(size_t nhosts, virDomainDiskHostDefPtr hosts); +int virDomainDiskGetActualType(virDomainDiskDefPtr def); int virDomainDeviceFindControllerModel(virDomainDefPtr def, virDomainDeviceInfoPtr info, int controllerType); diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 0b28bac26c..aae6a3b95c 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -198,6 +198,7 @@ virDomainDiskErrorPolicyTypeToString; virDomainDiskFindByBusAndDst; virDomainDiskGeometryTransTypeFromString; virDomainDiskGeometryTransTypeToString; +virDomainDiskGetActualType; virDomainDiskHostDefClear; virDomainDiskHostDefCopy; virDomainDiskHostDefFree; diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index e499d545cc..e9908f9e65 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -3869,7 +3869,7 @@ qemuDomainDiskGetSourceString(virConnectPtr conn, virDomainDiskDefPtr disk, char **source) { - int actualType = qemuDiskGetActualType(disk); + int actualType = virDomainDiskGetActualType(disk); char *secret = NULL; int ret = -1; @@ -3899,7 +3899,7 @@ qemuDomainDiskGetSourceString(virConnectPtr conn, goto cleanup; } - ret = qemuGetDriveSourceString(qemuDiskGetActualType(disk), + ret = qemuGetDriveSourceString(virDomainDiskGetActualType(disk), disk->src, disk->protocol, disk->nhosts, @@ -3927,7 +3927,7 @@ qemuBuildDriveStr(virConnectPtr conn, int idx = virDiskNameToIndex(disk->dst); int busid = -1, unitid = -1; char *source = NULL; - int actualType = qemuDiskGetActualType(disk); + int actualType = virDomainDiskGetActualType(disk); if (idx < 0) { virReportError(VIR_ERR_INTERNAL_ERROR, diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c index ecaaf815ad..dc4ded35cf 100644 --- a/src/qemu/qemu_conf.c +++ b/src/qemu/qemu_conf.c @@ -1303,16 +1303,6 @@ cleanup: } -int -qemuDiskGetActualType(virDomainDiskDefPtr def) -{ - if (def->type == VIR_DOMAIN_DISK_TYPE_VOLUME && def->srcpool) - return def->srcpool->actualtype; - - return def->type; -} - - int qemuTranslateDiskSourcePool(virConnectPtr conn, virDomainDiskDefPtr def) diff --git a/src/qemu/qemu_conf.h b/src/qemu/qemu_conf.h index 1f44a76795..842b740fe8 100644 --- a/src/qemu/qemu_conf.h +++ b/src/qemu/qemu_conf.h @@ -305,8 +305,6 @@ int qemuSetUnprivSGIO(virDomainDeviceDefPtr dev); int qemuDriverAllocateID(virQEMUDriverPtr driver); virDomainXMLOptionPtr virQEMUDriverCreateXMLConf(virQEMUDriverPtr driver); -int qemuDiskGetActualType(virDomainDiskDefPtr def); - int qemuTranslateDiskSourcePool(virConnectPtr conn, virDomainDiskDefPtr def); diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 59e018de80..6ddbd2129c 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -12260,7 +12260,7 @@ endjob: static int qemuDomainSnapshotPrepareDiskExternalBackingInactive(virDomainDiskDefPtr disk) { - int actualType = qemuDiskGetActualType(disk); + int actualType = virDomainDiskGetActualType(disk); switch ((enum virDomainDiskType) actualType) { case VIR_DOMAIN_DISK_TYPE_BLOCK: @@ -12304,7 +12304,7 @@ qemuDomainSnapshotPrepareDiskExternalBackingInactive(virDomainDiskDefPtr disk) static int qemuDomainSnapshotPrepareDiskExternalBackingActive(virDomainDiskDefPtr disk) { - int actualType = qemuDiskGetActualType(disk); + int actualType = virDomainDiskGetActualType(disk); if (actualType == VIR_DOMAIN_DISK_TYPE_BLOCK && disk->device == VIR_DOMAIN_DISK_DEVICE_LUN) { @@ -12448,7 +12448,7 @@ qemuDomainSnapshotPrepareDiskInternal(virConnectPtr conn, if (qemuTranslateDiskSourcePool(conn, disk) < 0) return -1; - actualType = qemuDiskGetActualType(disk); + actualType = virDomainDiskGetActualType(disk); switch ((enum virDomainDiskType) actualType) { case VIR_DOMAIN_DISK_TYPE_BLOCK: -- GitLab