Messages in this thread | | | Date | Wed, 10 May 2023 16:58:40 +0800 | From | Chao Gao <> | Subject | Re: [PATCH v8 3/6] KVM: x86: Virtualize CR3.LAM_{U48,U57} |
| |
>@@ -7743,6 +7744,9 @@ static void vmx_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu) > vmx->msr_ia32_feature_control_valid_bits &= > ~FEAT_CTL_SGX_LC_ENABLED; > >+ if (guest_cpuid_has(vcpu, X86_FEATURE_LAM)) >+ vcpu->arch.cr3_ctrl_bits |= X86_CR3_LAM_U48 | X86_CR3_LAM_U57;
This function can be called multiple times. We need to clear LAM bits if LAM isn't exposed to the guest, i.e.,
else vcpu->arch.cr3_ctrl_bits &= ~(X86_CR3_LAM_U48 | X86_CR3_LAM_U57);
With this fixed,
Reviewed-by: Chao Gao <chao.gao@intel.com>
| |