Lines Matching full:msr
24 static u64 *find_mtrr(struct kvm_vcpu *vcpu, unsigned int msr) in find_mtrr() argument
28 switch (msr) { in find_mtrr()
30 index = msr - MTRRphysBase_MSR(0); in find_mtrr()
36 index = msr - MSR_MTRRfix16K_80000; in find_mtrr()
46 index = msr - MSR_MTRRfix4K_C0000; in find_mtrr()
61 static bool kvm_mtrr_valid(struct kvm_vcpu *vcpu, u32 msr, u64 data) in kvm_mtrr_valid() argument
66 if (msr == MSR_MTRRdefType) { in kvm_mtrr_valid()
70 } else if (msr >= MSR_MTRRfix64K_00000 && msr <= MSR_MTRRfix4K_F8000) { in kvm_mtrr_valid()
78 if (WARN_ON_ONCE(!(msr >= MTRRphysBase_MSR(0) && in kvm_mtrr_valid()
79 msr <= MTRRphysMask_MSR(KVM_NR_VAR_MTRR - 1)))) in kvm_mtrr_valid()
83 if ((msr & 1) == 0) { in kvm_mtrr_valid()
96 int kvm_mtrr_set_msr(struct kvm_vcpu *vcpu, u32 msr, u64 data) in kvm_mtrr_set_msr() argument
100 mtrr = find_mtrr(vcpu, msr); in kvm_mtrr_set_msr()
104 if (!kvm_mtrr_valid(vcpu, msr, data)) in kvm_mtrr_set_msr()
111 int kvm_mtrr_get_msr(struct kvm_vcpu *vcpu, u32 msr, u64 *pdata) in kvm_mtrr_get_msr() argument
115 /* MSR_MTRRcap is a readonly MSR. */ in kvm_mtrr_get_msr()
116 if (msr == MSR_MTRRcap) { in kvm_mtrr_get_msr()
127 mtrr = find_mtrr(vcpu, msr); in kvm_mtrr_get_msr()