From 1c533759e1cc0c422b0b374224b284feb6c554e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A1n=20Tomko?= Date: Thu, 3 May 2018 10:05:51 +0200 Subject: [PATCH] qemuBuildMachineCommandLine: use a switch for virDomainVirtType MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Enumerate all the cases and use virReportEnumRangeError. Signed-off-by: Ján Tomko Reviewed-by: John Ferlan --- src/qemu/qemu_command.c | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index db59c6dc79..824ebbc89e 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -7005,15 +7005,38 @@ qemuBuildMachineCommandLine(virCommandPtr cmd, virCommandAddArg(cmd, "-machine"); virBufferAdd(&buf, def->os.machine, -1); - if (def->virtType == VIR_DOMAIN_VIRT_QEMU) { + switch (def->virtType) { + case VIR_DOMAIN_VIRT_QEMU: virBufferAddLit(&buf, ",accel=tcg"); - } else if (def->virtType == VIR_DOMAIN_VIRT_KVM) { + break; + + case VIR_DOMAIN_VIRT_KVM: virBufferAddLit(&buf, ",accel=kvm"); - } else { + break; + + case VIR_DOMAIN_VIRT_KQEMU: + case VIR_DOMAIN_VIRT_XEN: + case VIR_DOMAIN_VIRT_LXC: + case VIR_DOMAIN_VIRT_UML: + case VIR_DOMAIN_VIRT_OPENVZ: + case VIR_DOMAIN_VIRT_TEST: + case VIR_DOMAIN_VIRT_VMWARE: + case VIR_DOMAIN_VIRT_HYPERV: + case VIR_DOMAIN_VIRT_VBOX: + case VIR_DOMAIN_VIRT_PHYP: + case VIR_DOMAIN_VIRT_PARALLELS: + case VIR_DOMAIN_VIRT_BHYVE: + case VIR_DOMAIN_VIRT_VZ: + case VIR_DOMAIN_VIRT_NONE: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("the QEMU binary does not support %s"), virDomainVirtTypeToString(def->virtType)); return -1; + + case VIR_DOMAIN_VIRT_LAST: + default: + virReportEnumRangeError(virDomainVirtType, def->virtType); + return -1; } /* To avoid the collision of creating USB controllers when calling -- GitLab