From 8b035c84d8a7362a87a95e6114b8e7f959685ed9 Mon Sep 17 00:00:00 2001 From: Chen Hanxiao Date: Sat, 22 Oct 2016 17:49:38 +0800 Subject: [PATCH] qemu: Forbid pinning vCPUs for TCG domain We don't support cpu pinning for TCG domains because QEMU runs them in one thread only. But vcpupin command was able to set them, which resulted in a failed startup, so make sure that doesn't happen. Signed-off-by: Chen Hanxiao --- src/qemu/qemu_driver.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 3f57a9fee0..817c567836 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -5189,6 +5189,13 @@ qemuDomainPinVcpuFlags(virDomainPtr dom, if (virDomainObjGetDefs(vm, flags, &def, &persistentDef) < 0) goto endjob; + if ((def && def->virtType == VIR_DOMAIN_VIRT_QEMU) || + (persistentDef && persistentDef->virtType == VIR_DOMAIN_VIRT_QEMU)) { + virReportError(VIR_ERR_OPERATION_FAILED, "%s", + _("Virt type 'qemu' does not support vCPU pinning")); + goto endjob; + } + if (persistentDef && !(vcpuinfo = virDomainDefGetVcpu(persistentDef, vcpu))) { virReportError(VIR_ERR_INVALID_ARG,