Lines Matching +full:gpa +full:- +full:0
1 /* SPDX-License-Identifier: GPL-2.0 */
42 return vcpu->arch.maxphyaddr; in cpuid_maxphyaddr()
45 static inline bool kvm_vcpu_is_legal_gpa(struct kvm_vcpu *vcpu, gpa_t gpa) in kvm_vcpu_is_legal_gpa() argument
47 return !(gpa & vcpu->arch.reserved_gpa_bits); in kvm_vcpu_is_legal_gpa()
50 static inline bool kvm_vcpu_is_illegal_gpa(struct kvm_vcpu *vcpu, gpa_t gpa) in kvm_vcpu_is_illegal_gpa() argument
52 return !kvm_vcpu_is_legal_gpa(vcpu, gpa); in kvm_vcpu_is_illegal_gpa()
56 gpa_t gpa, gpa_t alignment) in kvm_vcpu_is_legal_aligned_gpa() argument
58 return IS_ALIGNED(gpa, alignment) && kvm_vcpu_is_legal_gpa(vcpu, gpa); in kvm_vcpu_is_legal_aligned_gpa()
61 static inline bool page_address_valid(struct kvm_vcpu *vcpu, gpa_t gpa) in page_address_valid() argument
63 return kvm_vcpu_is_legal_aligned_gpa(vcpu, gpa, PAGE_SIZE); in page_address_valid()
114 best = kvm_find_cpuid_entry(vcpu, 0); in guest_cpuid_is_amd_or_hygon()
116 (is_guest_vendor_amd(best->ebx, best->ecx, best->edx) || in guest_cpuid_is_amd_or_hygon()
117 is_guest_vendor_hygon(best->ebx, best->ecx, best->edx)); in guest_cpuid_is_amd_or_hygon()
124 best = kvm_find_cpuid_entry(vcpu, 0); in guest_cpuid_is_intel()
125 return best && is_guest_vendor_intel(best->ebx, best->ecx, best->edx); in guest_cpuid_is_intel()
132 best = kvm_find_cpuid_entry(vcpu, 0x1); in guest_cpuid_family()
134 return -1; in guest_cpuid_family()
136 return x86_family(best->eax); in guest_cpuid_family()
143 best = kvm_find_cpuid_entry(vcpu, 0x1); in guest_cpuid_model()
145 return -1; in guest_cpuid_model()
147 return x86_model(best->eax); in guest_cpuid_model()
159 best = kvm_find_cpuid_entry(vcpu, 0x1); in guest_cpuid_stepping()
161 return -1; in guest_cpuid_stepping()
163 return x86_stepping(best->eax); in guest_cpuid_stepping()
182 return vcpu->arch.msr_platform_info & MSR_PLATFORM_INFO_CPUID_FAULT; in supports_cpuid_fault()
187 return vcpu->arch.msr_misc_features_enables & in cpuid_fault_enabled()
229 if (!vcpu->arch.pv_cpuid.enforce) in guest_pv_has()
232 return vcpu->arch.pv_cpuid.features & (1u << kvm_feature); in guest_pv_has()
247 return -1; in kvm_governed_feature_index()
253 return kvm_governed_feature_index(x86_feature) >= 0; in kvm_is_governed_feature()
262 vcpu->arch.governed_features.enabled); in kvm_governed_feature_set()
278 vcpu->arch.governed_features.enabled); in guest_can_use()