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@xxxxxxxxx> --- lib/x86/processor.h | 2 +- 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++; -- 2.24.1