diff options
Diffstat (limited to 'arch/x86/kvm/cpuid.h')
| -rw-r--r-- | arch/x86/kvm/cpuid.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/x86/kvm/cpuid.h b/arch/x86/kvm/cpuid.h index a2a1bb7ed8c1..eeecbed26ac7 100644 --- a/arch/x86/kvm/cpuid.h +++ b/arch/x86/kvm/cpuid.h | |||
| @@ -48,6 +48,14 @@ static inline bool guest_cpuid_has_smep(struct kvm_vcpu *vcpu) | |||
| 48 | return best && (best->ebx & bit(X86_FEATURE_SMEP)); | 48 | return best && (best->ebx & bit(X86_FEATURE_SMEP)); |
| 49 | } | 49 | } |
| 50 | 50 | ||
| 51 | static inline bool guest_cpuid_has_smap(struct kvm_vcpu *vcpu) | ||
| 52 | { | ||
| 53 | struct kvm_cpuid_entry2 *best; | ||
| 54 | |||
| 55 | best = kvm_find_cpuid_entry(vcpu, 7, 0); | ||
| 56 | return best && (best->ebx & bit(X86_FEATURE_SMAP)); | ||
| 57 | } | ||
| 58 | |||
| 51 | static inline bool guest_cpuid_has_fsgsbase(struct kvm_vcpu *vcpu) | 59 | static inline bool guest_cpuid_has_fsgsbase(struct kvm_vcpu *vcpu) |
| 52 | { | 60 | { |
| 53 | struct kvm_cpuid_entry2 *best; | 61 | struct kvm_cpuid_entry2 *best; |
