Re: [PATCH RFC 0/2] KVM: x86: allow for more CPUID entries

From: Dr. David Alan Gilbert
Date: Tue Sep 15 2020 - 15:49:16 EST


* Vitaly Kuznetsov (vkuznets@xxxxxxxxxx) wrote:
> 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>

Oh nice, I was just going to bump the magic number :-)

Anyway, this seems to work for me, so:

Tested-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
>
--
Dr. David Alan Gilbert / dgilbert@xxxxxxxxxx / Manchester, UK