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) &&
1689 static bool __kvm_valid_efer(struct kvm_vcpu *vcpu, u64 efer)
1691 if (efer & EFER_FFXSR && !guest_cpuid_has(vcpu, X86_FEATURE_FXSR_OPT))
1694 if (efer & EFER_SVME && !guest_cpuid_has(vcpu, X86_FEATURE_SVM))
1697 if (efer & (EFER_LME | EFER_LMA) &&
1701 if (efer & EFER_NX && !guest_cpuid_has(vcpu, X86_FEATURE_NX))
1707 bool kvm_valid_efer(struct kvm_vcpu *vcpu, u64 efer)
1709 if (efer & efer_reserved_bits)
1712 return __kvm_valid_efer(vcpu, efer);
1718 u64 old_efer = vcpu->arch.efer;
1719 u64 efer = msr_info->data;
1722 if (efer & efer_reserved_bits)
1726 if (!__kvm_valid_efer(vcpu, efer))
1730 (vcpu->arch.efer & EFER_LME) != (efer & EFER_LME))
1734 efer &= ~EFER_LMA;
1735 efer |= vcpu->arch.efer & EFER_LMA;
1737 r = static_call(kvm_x86_set_efer)(vcpu, efer);
1743 if ((efer ^ old_efer) & KVM_MMU_EFER_ROLE_BITS)
4084 msr_info->data = vcpu->arch.efer;
10217 put_smstate(u64, buf, 0x7ed0, vcpu->arch.efer);
11320 sregs->efer = vcpu->arch.efer;
11462 if ((sregs->efer & EFER_LME) && (sregs->cr0 & X86_CR0_PG)) {
11468 if (!(sregs->cr4 & X86_CR4_PAE) || !(sregs->efer & EFER_LMA))
11477 if (sregs->efer & EFER_LMA || sregs->cs.l)
11517 *mmu_reset_needed |= vcpu->arch.efer != sregs->efer;
11518 static_call(kvm_x86_set_efer)(vcpu, sregs->efer);
11586 !(sregs2->efer & EFER_LMA);