Lines Matching refs:efer
951 if ((vcpu->arch.efer & EFER_LME) && !is_paging(vcpu) &&
962 if (!(vcpu->arch.efer & EFER_LME) && (cr0 & X86_CR0_PG) &&
1695 static bool __kvm_valid_efer(struct kvm_vcpu *vcpu, u64 efer)
1697 if (efer & EFER_AUTOIBRS && !guest_cpuid_has(vcpu, X86_FEATURE_AUTOIBRS))
1700 if (efer & EFER_FFXSR && !guest_cpuid_has(vcpu, X86_FEATURE_FXSR_OPT))
1703 if (efer & EFER_SVME && !guest_cpuid_has(vcpu, X86_FEATURE_SVM))
1706 if (efer & (EFER_LME | EFER_LMA) &&
1710 if (efer & EFER_NX && !guest_cpuid_has(vcpu, X86_FEATURE_NX))
1716 bool kvm_valid_efer(struct kvm_vcpu *vcpu, u64 efer)
1718 if (efer & efer_reserved_bits)
1721 return __kvm_valid_efer(vcpu, efer);
1727 u64 old_efer = vcpu->arch.efer;
1728 u64 efer = msr_info->data;
1731 if (efer & efer_reserved_bits)
1735 if (!__kvm_valid_efer(vcpu, efer))
1739 (vcpu->arch.efer & EFER_LME) != (efer & EFER_LME))
1743 efer &= ~EFER_LMA;
1744 efer |= vcpu->arch.efer & EFER_LMA;
1746 r = static_call(kvm_x86_set_efer)(vcpu, efer);
1752 if ((efer ^ old_efer) & KVM_MMU_EFER_ROLE_BITS)
4099 msr_info->data = vcpu->arch.efer;
11202 sregs->efer = vcpu->arch.efer;
11344 if ((sregs->efer & EFER_LME) && (sregs->cr0 & X86_CR0_PG)) {
11350 if (!(sregs->cr4 & X86_CR4_PAE) || !(sregs->efer & EFER_LMA))
11359 if (sregs->efer & EFER_LMA || sregs->cs.l)
11399 *mmu_reset_needed |= vcpu->arch.efer != sregs->efer;
11400 static_call(kvm_x86_set_efer)(vcpu, sregs->efer);
11468 !(sregs2->efer & EFER_LMA);