From mboxrd@z Thu Jan 1 00:00:00 1970 From: Borislav Petkov Subject: Re: Shut up unhandled MSR warnings Date: Thu, 12 Nov 2015 13:16:13 +0100 Message-ID: <20151112121613.GC3838@pd.tnic> References: <20151112101317.GA3649@pd.tnic> <56446AFD.4030800@redhat.com> <20151112105958.GA3838@pd.tnic> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Cc: =?utf-8?B?SsO2cmcgUsO2ZGVs?= , kvm ML , lkml To: Paolo Bonzini Return-path: Content-Disposition: inline In-Reply-To: <20151112105958.GA3838@pd.tnic> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On Thu, Nov 12, 2015 at 11:59:58AM +0100, Borislav Petkov wrote: > On Thu, Nov 12, 2015 at 11:33:33AM +0100, Paolo Bonzini wrote: > > Yes, see guest_cpuid_has_* for an example of reading the CPUID values. > > > > But if it's defined for _all_ models starting at family 21, we can just > > do it unconditionally. > > The thing is, those bits are Reserved again on the next family 22. Lemme > take a look at guest_cpuid_has_* and see how ugly it gets. Ok, I see there's guest_cpuid_is_amd() but I'd need also family and model. How about adding also guest_cpuid_family(), guest_cpuid_model(), guest_cpuid_stepping()? Those could be quite useful in other contexts maybe. Or, I can do a single function which simply returns CPUID_1_EAX of the guest vcpu and caller can then pick stuff apart... Thoughts? -- Regards/Gruss, Boris. ECO tip #101: Trim your mails when you reply.