With QEMU and newer AMD CPUs (namely: Epyc 'Rome') the current limit for KVM_MAX_CPUID_ENTRIES(80) is reported to be hit. Last time it was raised from '40' in 2010. We can, of course, just bump it a little bit to fix the immediate issue but the report made me wonder why we need to pre- allocate vcpu->arch.cpuid_entries array instead of sizing it dynamically. This RFC is intended to feed my curiosity. Very mildly tested with selftests/kvm-unit-tests and nothing seems to break. I also don't have access to the system where the original issue was reported but chances we're fixing it are very good IMO as just the second patch alone was reported to be sufficient. Reported-by: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx> Vitaly Kuznetsov (2): KVM: x86: allocate vcpu->arch.cpuid_entries dynamically KVM: x86: bump KVM_MAX_CPUID_ENTRIES arch/x86/include/asm/kvm_host.h | 4 +-- arch/x86/kvm/cpuid.c | 55 ++++++++++++++++++++++++--------- arch/x86/kvm/x86.c | 1 + 3 files changed, 43 insertions(+), 17 deletions(-) -- 2.25.4