History

kvm: introduce KVM_MAX_VCPU_ID

The KVM_MAX_VCPUS define provides the maximum number of vCPUs per guest, and also the upper limit for vCPU ids. This is okay for all archs except PowerPC which can have higher ids, depending on the cpu/core/thread topology. In the worst case (single threaded guest, host with 8 threads per core), it limits the maximum number of vCPUS to KVM_MAX_VCPUS / 8. This patch separates the vCPU numbering from the total number of vCPUs, with the introduction of KVM_MAX_VCPU_ID, as the maximal valid value for vCPU ids plus one. The corresponding KVM_CAP_MAX_VCPU_ID allows userspace to validate vCPU ids before passing them to KVM_CREATE_VCPU. This patch only implements KVM_MAX_VCPU_ID with a specific value for PowerPC. Other archs continue to return KVM_MAX_VCPUS instead.

Greg Kurz committed 10 years ago

Commit 0b1b1df1 parent 9b9e3fc5 files · +19 −3Browse files

Showing the changes to include/uapi (1 of 5 files). Show all

Unified · Split

include/uapi/linux/kvm.h+1−0
@@ -865,6 +865,7 @@ struct kvm_ppc_smmu_info { · 864 unmodified lines
865865 #define KVM_CAP_SPAPR_TCE_64 125
866866 #define KVM_CAP_ARM_PMU_V3 126
867867 #define KVM_CAP_VCPU_ATTRIBUTES 127
868+#define KVM_CAP_MAX_VCPU_ID 128
868869
869870 #ifdef KVM_CAP_IRQ_ROUTING
870871