On Thu, Sep 29, 2022, Jim Mattson wrote: > KVM_GET_SUPPORTED_CPUID should only enumerate features that KVM > actually supports. CPUID.80000006H:EDX[17:16] are reserved bits and > should be masked off. > > Fixes: 43d05de2bee7 ("KVM: pass through CPUID(0x80000006)") > Signed-off-by: Jim Mattson <jmattson@xxxxxxxxxx> > --- > arch/x86/kvm/cpuid.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c > index ea4e213bcbfb..90f9c295825d 100644 > --- a/arch/x86/kvm/cpuid.c > +++ b/arch/x86/kvm/cpuid.c > @@ -1125,6 +1125,7 @@ static inline int __do_cpuid_func(struct kvm_cpuid_array *array, u32 function) > break; > case 0x80000006: > /* L2 cache and TLB: pass through host info. */ Might be worth tweaking the comment, e.g. to /* L2 cache and TLB: advertise host info, sans reserved bits. */ > + entry->edx &= ~GENMASK(17, 16); > break; > case 0x80000007: /* Advanced power management */ > /* invariant TSC is CPUID.80000007H:EDX[8] */ > -- > 2.38.0.rc1.362.ged0d419d3c-goog >