|
@@ -7519,7 +7519,7 @@ static void prepare_vmcs02(struct kvm_vcpu *vcpu, struct vmcs12 *vmcs12)
|
|
|
|
|
|
if (vmcs12->vm_entry_controls & VM_ENTRY_LOAD_IA32_EFER)
|
|
|
vcpu->arch.efer = vmcs12->guest_ia32_efer;
|
|
|
- if (vmcs12->vm_entry_controls & VM_ENTRY_IA32E_MODE)
|
|
|
+ else if (vmcs12->vm_entry_controls & VM_ENTRY_IA32E_MODE)
|
|
|
vcpu->arch.efer |= (EFER_LMA | EFER_LME);
|
|
|
else
|
|
|
vcpu->arch.efer &= ~(EFER_LMA | EFER_LME);
|
|
@@ -7929,7 +7929,7 @@ static void load_vmcs12_host_state(struct kvm_vcpu *vcpu,
|
|
|
{
|
|
|
if (vmcs12->vm_exit_controls & VM_EXIT_LOAD_IA32_EFER)
|
|
|
vcpu->arch.efer = vmcs12->host_ia32_efer;
|
|
|
- if (vmcs12->vm_exit_controls & VM_EXIT_HOST_ADDR_SPACE_SIZE)
|
|
|
+ else if (vmcs12->vm_exit_controls & VM_EXIT_HOST_ADDR_SPACE_SIZE)
|
|
|
vcpu->arch.efer |= (EFER_LMA | EFER_LME);
|
|
|
else
|
|
|
vcpu->arch.efer &= ~(EFER_LMA | EFER_LME);
|