From 8efca30ffdb4678bdb7bab4a41bc6c40cafbe700 Mon Sep 17 00:00:00 2001 From: Andrea Bolognani Date: Mon, 27 Jun 2016 13:47:53 +0200 Subject: [PATCH] util: hostcpu: Add virHostCPUGetKVMMaxVCPUs() stub If we don't HAVE_LINUX_KVM_H, we can't query /dev/kvm to discover the limits on the number of vCPUs, so we report an error and return a negative value instead. --- src/util/virhostcpu.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/util/virhostcpu.c b/src/util/virhostcpu.c index 4ff4e72125..585343aa94 100644 --- a/src/util/virhostcpu.c +++ b/src/util/virhostcpu.c @@ -1299,6 +1299,7 @@ virHostCPUGetThreadsPerSubcore(virArch arch ATTRIBUTE_UNUSED) #endif /* HAVE_LINUX_KVM_H && defined(KVM_CAP_PPC_SMT) */ +#if HAVE_LINUX_KVM_H int virHostCPUGetKVMMaxVCPUs(void) { @@ -1310,11 +1311,11 @@ virHostCPUGetKVMMaxVCPUs(void) return -1; } -#ifdef KVM_CAP_MAX_VCPUS +# ifdef KVM_CAP_MAX_VCPUS /* at first try KVM_CAP_MAX_VCPUS to determine the maximum count */ if ((ret = ioctl(fd, KVM_CHECK_EXTENSION, KVM_CAP_MAX_VCPUS)) > 0) goto cleanup; -#endif /* KVM_CAP_MAX_VCPUS */ +# endif /* KVM_CAP_MAX_VCPUS */ /* as a fallback get KVM_CAP_NR_VCPUS (the recommended maximum number of * vcpus). Note that on most machines this is set to 160. */ @@ -1329,3 +1330,12 @@ virHostCPUGetKVMMaxVCPUs(void) VIR_FORCE_CLOSE(fd); return ret; } +#else +int +virHostCPUGetKVMMaxVCPUs(void) +{ + virReportSystemError(ENOSYS, "%s", + _("KVM is not supported on this platform")); + return -1; +} +#endif /* HAVE_LINUX_KVM_H */ -- 2.47.2