Messages in this thread | | | From | Jim Mattson <> | Date | Wed, 31 Jan 2018 08:50:40 -0800 | Subject | Re: [PATCH v4 2/5] KVM: x86: Add IBPB support |
| |
On Wed, Jan 31, 2018 at 5:10 AM, KarimAllah Ahmed <karahmed@amazon.de> wrote:
> + vmx_disable_intercept_for_msr(vmx->vmcs01.msr_bitmap, MSR_IA32_PRED_CMD, > + MSR_TYPE_W);
Why not disable this intercept eagerly, rather than lazily? Unlike MSR_IA32_SPEC_CTRL, there is no guest value to save/restore, so there is no cost to disabling the intercept if the guest cpuid info declares support for it.
> + 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.
| |