Re: [kvm-unit-tests PATCH] x86: Fix the name for the SMEP CPUID bit

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 2/4/20 9:50 AM, Sean Christopherson wrote:
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++;
Reviewed-by: Krish Sadhukhan <krish.sadhukhan@xxxxxxxxxx>



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux