From: Andrea Bolognani Date: Mon, 27 Jun 2016 11:53:43 +0000 (+0200) Subject: qemu: capabilities: Make virHostCPUGetKVMMaxVCPUs() errors fatal X-Git-Tag: v2.1.0-rc1~203 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4074a82c0cc128003864208e22a42993083d0e04;p=thirdparty%2Flibvirt.git qemu: capabilities: Make virHostCPUGetKVMMaxVCPUs() errors fatal An error in virHostCPUGetKVMMaxVCPUs() means we've been unable to access /dev/kvm, or we're running on a platform that doesn't support KVM in the first place. If that's the case, we shouldn't ignore the error and report domcapabilities even though we know the user won't be able to start any KVM guest. --- diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index c8d8a54aae..3ad71a2907 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -4347,9 +4347,12 @@ virQEMUCapsFillDomainCaps(virDomainCapsPtr domCaps, domCaps->maxvcpus = virQEMUCapsGetMachineMaxCpus(qemuCaps, domCaps->machine); if (domCaps->virttype == VIR_DOMAIN_VIRT_KVM) { - int hostmaxvcpus = virHostCPUGetKVMMaxVCPUs(); - if (hostmaxvcpus >= 0) - domCaps->maxvcpus = MIN(domCaps->maxvcpus, hostmaxvcpus); + int hostmaxvcpus; + + if ((hostmaxvcpus = virHostCPUGetKVMMaxVCPUs()) < 0) + return -1; + + domCaps->maxvcpus = MIN(domCaps->maxvcpus, hostmaxvcpus); } if (virQEMUCapsFillDomainOSCaps(os, firmwares, nfirmwares) < 0 ||