Messages in this thread | | | Subject | Re: [PATCH v4 2/5] KVM: x86: Add IBPB support | From | KarimAllah Ahmed <> | Date | Wed, 31 Jan 2018 18:17:04 +0100 |
| |
On 01/31/2018 05:55 PM, Paolo Bonzini wrote: > On 31/01/2018 11:50, Jim Mattson wrote: >>> + if (to_vmx(vcpu)->save_spec_ctrl_on_exit) { >>> + nested_vmx_disable_intercept_for_msr( >>> + msr_bitmap_l1, msr_bitmap_l0, >>> + MSR_IA32_PRED_CMD, >>> + MSR_TYPE_R); >>> + } >> I don't think this should be predicated on >> "to_vmx(vcpu)->save_spec_ctrl_on_exit." Why not just >> "guest_cpuid_has(vcpu, X86_FEATURE_IBPB)"? Also, the final argument to >> nested_vmx_disable_intercept_for_msr should be MSR_TYPE_W rather than >> MSR_TYPE_R. > > In fact this MSR can even be passed down unconditionally, since it needs > no save/restore and has no ill performance effect on the sibling > hyperthread. > > Only MSR_IA32_SPEC_CTRL needs to be conditional on > "to_vmx(vcpu)->save_spec_ctrl_on_exit".
That used to be the case in an earlier version. There seems to be two opinions here:
1) Pass it only if CPUID for the guest has it. 2) Pass it unconditionally.
I do not really have a preference.
> > Paolo > Amazon Development Center Germany GmbH Berlin - Dresden - Aachen main office: Krausenstr. 38, 10117 Berlin Geschaeftsfuehrer: Dr. Ralf Herbrich, Christian Schlaeger Ust-ID: DE289237879 Eingetragen am Amtsgericht Charlottenburg HRB 149173 B
| |