diff options
author | Sean Christopherson <sean.j.christopherson@intel.com> | 2020-02-04 09:50:34 -0800 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2020-02-05 15:56:18 +0100 |
commit | 97b5f9553a48a15296462dc4c6170200b0dd70b8 (patch) | |
tree | cd5115fbb2f46f1f66fb764761ee9b184634a013 | |
parent | 477310421016368983e0be2639b91fc13d47e36d (diff) | |
download | kvm-unit-tests-97b5f9553a48a15296462dc4c6170200b0dd70b8.tar.gz |
x86: Fix the name for the SMEP CPUID bit
Fix the X86_FEATURE_* name for SMEP, which is incorrectly named
X86_FEATURE_INVPCID_SINGLE and is a wee bit confusing when looking at
the SMEP unit tests.
Note, there is no INVPCID_SINGLE CPUID bit, the bogus name likely came
from the Linux kernel, which has a synthetic feature flag for
INVPCID_SINGLE in word 7, bit 7 (CPUID 0x7.EBX is stored in word 9).
Fixes: 6ddcc29 ("kvm-unit-test: x86: Implement a generic wrapper for cpuid/cpuid_indexed functions")
Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Reviewed-by: Krish Sadhukhan <krish.sadhukhan@oracle.com>
Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r-- | lib/x86/processor.h | 2 | ||||
-rw-r--r-- | x86/access.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/lib/x86/processor.h b/lib/x86/processor.h index 7057180..03fdf64 100644 --- a/lib/x86/processor.h +++ b/lib/x86/processor.h @@ -138,7 +138,7 @@ static inline u8 cpuid_maxphyaddr(void) #define X86_FEATURE_XMM2 (CPUID(0x1, 0, EDX, 26)) #define X86_FEATURE_TSC_ADJUST (CPUID(0x7, 0, EBX, 1)) #define X86_FEATURE_HLE (CPUID(0x7, 0, EBX, 4)) -#define X86_FEATURE_INVPCID_SINGLE (CPUID(0x7, 0, EBX, 7)) +#define X86_FEATURE_SMEP (CPUID(0x7, 0, EBX, 7)) #define X86_FEATURE_INVPCID (CPUID(0x7, 0, EBX, 10)) #define X86_FEATURE_RTM (CPUID(0x7, 0, EBX, 11)) #define X86_FEATURE_SMAP (CPUID(0x7, 0, EBX, 20)) diff --git a/x86/access.c b/x86/access.c index 5233713..7303fc3 100644 --- a/x86/access.c +++ b/x86/access.c @@ -860,7 +860,7 @@ static int check_smep_andnot_wp(ac_pool_t *pool) ac_test_t at1; int err_prepare_andnot_wp, err_smep_andnot_wp; - if (!this_cpu_has(X86_FEATURE_INVPCID_SINGLE)) { + if (!this_cpu_has(X86_FEATURE_SMEP)) { return 1; } @@ -955,7 +955,7 @@ static int ac_test_run(void) } } - if (!this_cpu_has(X86_FEATURE_INVPCID_SINGLE)) { + if (!this_cpu_has(X86_FEATURE_SMEP)) { tests++; if (set_cr4_smep(1) == GP_VECTOR) { successes++; |