summaryrefslogtreecommitdiff
path: root/arch/x86/kvm/cpuid.h
diff options
context:
space:
mode:
authorJiri Kosina <jkosina@suse.cz>2014-06-04 13:09:01 +0200
committerJiri Kosina <jkosina@suse.cz>2014-06-04 13:09:01 +0200
commitaf5666e0f76023d9c296016024297903a4c83108 (patch)
tree9397e7a41dd3eb0c0e14a6407a8e8f12abed4fc5 /arch/x86/kvm/cpuid.h
parent1b15d2e5b8077670b1e6a33250a0d9577efff4a5 (diff)
parent368c96640d10a145da5f258f2d2833668d4f3629 (diff)
Merge branches 'for-3.15/upstream-fixes' and 'for-3.16/upstream' into for-linus
Conflicts: drivers/hid/hid-sensor-hub.c
Diffstat (limited to 'arch/x86/kvm/cpuid.h')
-rw-r--r--arch/x86/kvm/cpuid.h8
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)
return best && (best->ebx & bit(X86_FEATURE_SMEP));
}
+static inline bool guest_cpuid_has_smap(struct kvm_vcpu *vcpu)
+{
+ struct kvm_cpuid_entry2 *best;
+
+ best = kvm_find_cpuid_entry(vcpu, 7, 0);
+ return best && (best->ebx & bit(X86_FEATURE_SMAP));
+}
+
static inline bool guest_cpuid_has_fsgsbase(struct kvm_vcpu *vcpu)
{
struct kvm_cpuid_entry2 *best;