On Wed, Feb 26, 2020 at 01:03:01PM -0800, Jacob Keller wrote:
On 2/26/2020 12:57 PM, Sean Christopherson wrote:
Bummer. Using clear_cpu_cap() instead of setup_clear_cpu_cap() was me being fancy and trying to allow KVM to identify the case where VMX is available and configured on some CPUs but not all. I'll work on a fix.
Hmm. Right. For that to work, you'd need to make this disabling happen significantly later, and/or fix setup_pku to somehow honor this properly.
Arguably, setup_pku() should be a little less heavy handed in updating cpufeatures for X86_FEATURE_OSPKE, but init_ia32_feat_ctl() should also be more robust.
I've reproduced the bug, should have a fix ready by EOD.
But it looks like rdmsr is global and not tied to a given CPU anyways?
For better or worse, the MSR is thread scoped.