[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200527012221.GE31696@linux.intel.com>
Date: Tue, 26 May 2020 18:22:21 -0700
From: Sean Christopherson <sean.j.christopherson@...el.com>
To: Krish Sadhukhan <krish.sadhukhan@...cle.com>
Cc: Maxim Levitsky <mlevitsk@...hat.com>, kvm@...r.kernel.org,
Paolo Bonzini <pbonzini@...hat.com>,
"H. Peter Anvin" <hpa@...or.com>, Tao Xu <tao3.xu@...el.com>,
Jim Mattson <jmattson@...gle.com>,
linux-kernel@...r.kernel.org, Joerg Roedel <joro@...tes.org>,
"maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" <x86@...nel.org>,
Wanpeng Li <wanpengli@...cent.com>,
Ingo Molnar <mingo@...hat.com>,
Thomas Gleixner <tglx@...utronix.de>,
Borislav Petkov <bp@...en8.de>,
Vitaly Kuznetsov <vkuznets@...hat.com>,
Jingqi Liu <jingqi.liu@...el.com>
Subject: Re: [PATCH 0/2] Fix issue with not starting nesting guests on my
system
On Tue, May 26, 2020 at 06:03:32PM -0700, Krish Sadhukhan wrote:
>
> On 5/23/20 9:14 AM, Maxim Levitsky wrote:
> >On my AMD machine I noticed that I can't start any nested guests,
> >because nested KVM (everything from master git branches) complains
> >that it can't find msr MSR_IA32_UMWAIT_CONTROL which my system doesn't support
> >at all anyway.
> >
> >I traced it to the recently added UMWAIT support to qemu and kvm.
> >The kvm portion exposed the new MSR in KVM_GET_MSR_INDEX_LIST without
> >checking that it the underlying feature is supported in CPUID.
> >It happened to work when non nested because as a precation kvm,
> >tries to read each MSR on host before adding it to that list,
> >and when read gets a #GP it ignores it.
> >
> >When running nested, the L1 hypervisor can be set to ignore unknown
> >msr read/writes (I need this for some other guests), thus this safety
> >check doesn't work anymore.
> >
> >V2: * added a patch to setup correctly the X86_FEATURE_WAITPKG kvm capability
> > * dropped the cosmetic fix patch as it is now fixed in kvm/queue
> >
> >Best regards,
> > Maxim Levitsky
> >
> >Maxim Levitsky (2):
> > kvm/x86/vmx: enable X86_FEATURE_WAITPKG in KVM capabilities
> > kvm/x86: don't expose MSR_IA32_UMWAIT_CONTROL unconditionally
> >
> > arch/x86/kvm/vmx/vmx.c | 3 +++
> > arch/x86/kvm/x86.c | 4 ++++
> > 2 files changed, 7 insertions(+)
> >
> Nit: The added 'break' statement in patch# 2 is not required.
It is unless you want to add a fallthrough annotation.
Powered by blists - more mailing lists