On Wed, Mar 31, 2021, Kuppuswamy, Sathyanarayanan wrote: > > On 3/31/21 3:11 PM, Dave Hansen wrote: > > On 3/31/21 3:06 PM, Sean Christopherson wrote: > > > I've no objection to a nice message in the #VE handler. What I'm > > > objecting to > > > is sanity checking the CPUID model provided by the TDX module. If we > > > don't > > > trust the TDX module to honor the spec, then there are a huge pile of > > > things > > > that are far higher priority than MONITOR/MWAIT. > > > > In other words: Don't muck with CPUID or the X86_FEATURE at all. Don't > > check it to comply with the spec. If something doesn't comply, we'll > > get a #VE at *SOME* point. We don't need to do belt-and-suspenders > > programming here. > > > > That sounds sane to me. > But I think there are cases (like MCE) where SEAM does not disable them > because > there will be future support for it. We should at-least suppress such features > in kernel.
MCE is a terrible example, because the TDX behavior for MCE is terrible. Enumerating MCE as supported but injecting a #GP if the guest attempts to set CR4.MCE=1 is awful. I'm all for treating that as a one-off case, with a very derogatory comment :-)