From 35582d112505419a6873831e1fba9dae8b45b0b8 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Thu, 7 Jun 2018 12:25:02 +0200 Subject: [PATCH] qemu: command: Split out formatting of disk source commandline MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Further split qemuBuildDiskCommandLine to separate formatting of the source part. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- src/qemu/qemu_command.c | 37 ++++++++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index d94308e5b3..1c162603e5 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -2231,27 +2231,42 @@ qemuBuildBlockStorageSourceAttachDataCommandline(virCommandPtr cmd, static int -qemuBuildDiskCommandLine(virCommandPtr cmd, - const virDomainDef *def, - virDomainDiskDefPtr disk, - virQEMUCapsPtr qemuCaps, - unsigned int bootindex, - bool driveBoot) +qemuBuildDiskSourceCommandLine(virCommandPtr cmd, + virDomainDiskDefPtr disk, + virQEMUCapsPtr qemuCaps, + bool driveBoot) { qemuBlockStorageSourceAttachDataPtr data = NULL; - char *optstr; + int ret = -1; if (!(data = qemuBuildStorageSourceAttachPrepareDrive(disk, qemuCaps, driveBoot))) return -1; if (qemuBuildStorageSourceAttachPrepareCommon(disk->src, data, qemuCaps) < 0 || - qemuBuildBlockStorageSourceAttachDataCommandline(cmd, data) < 0) { - qemuBlockStorageSourceAttachDataFree(data); - return -1; - } + qemuBuildBlockStorageSourceAttachDataCommandline(cmd, data) < 0) + goto cleanup; + ret = 0; + + cleanup: qemuBlockStorageSourceAttachDataFree(data); + return ret; +} + + +static int +qemuBuildDiskCommandLine(virCommandPtr cmd, + const virDomainDef *def, + virDomainDiskDefPtr disk, + virQEMUCapsPtr qemuCaps, + unsigned int bootindex, + bool driveBoot) +{ + char *optstr; + + if (qemuBuildDiskSourceCommandLine(cmd, disk, qemuCaps, driveBoot) < 0) + return -1; if (!qemuDiskBusNeedsDriveArg(disk->bus)) { if (disk->bus == VIR_DOMAIN_DISK_BUS_FDC) { -- 2.47.2