]> git.baikalelectronics.ru Git - kernel.git/commitdiff
KVM: sefltests: Use CPUID_* instead of X86_FEATURE_* for one-off usage
authorSean Christopherson <seanjc@google.com>
Tue, 14 Jun 2022 20:06:27 +0000 (20:06 +0000)
committerSean Christopherson <seanjc@google.com>
Thu, 14 Jul 2022 01:14:08 +0000 (18:14 -0700)
Rename X86_FEATURE_* macros to CPUID_* in various tests to free up the
X86_FEATURE_* names for KVM-Unit-Tests style CPUID automagic where the
function, leaf, register, and bit for the feature is embedded in its
macro value.

No functional change intended.

Signed-off-by: Sean Christopherson <seanjc@google.com>
Link: https://lore.kernel.org/r/20220614200707.3315957-3-seanjc@google.com
tools/testing/selftests/kvm/include/x86_64/processor.h
tools/testing/selftests/kvm/x86_64/amx_test.c
tools/testing/selftests/kvm/x86_64/cr4_cpuid_sync_test.c
tools/testing/selftests/kvm/x86_64/monitor_mwait_test.c
tools/testing/selftests/kvm/x86_64/svm_nested_soft_inject_test.c

index 71e942ffac77f7060b8a14aa402b264eb962c6db..776817a454bf9f794b14459f3282f2ae4ee13cd0 100644 (file)
@@ -50,6 +50,7 @@
 #define CPUID_SMX              (1ul << 6)
 #define CPUID_PCID             (1ul << 17)
 #define CPUID_XSAVE            (1ul << 26)
+#define CPUID_OSXSAVE          (1ul << 27)
 
 /* CPUID.7.EBX */
 #define CPUID_FSGSBASE         (1ul << 0)
@@ -64,6 +65,9 @@
 /* CPUID.0x8000_0001.EDX */
 #define CPUID_GBPAGES          (1ul << 26)
 
+/* CPUID.0x8000_000A.EDX */
+#define CPUID_NRIPS            BIT(3)
+
 /* Page table bitfield declarations */
 #define PTE_PRESENT_MASK        BIT_ULL(0)
 #define PTE_WRITABLE_MASK       BIT_ULL(1)
index 4c59923f454fee3646e00fe56e3fd9be1761b9ca..8024562016bc06a1c6671e2aff308f689a92e07e 100644 (file)
@@ -25,9 +25,6 @@
 # error This test is 64-bit only
 #endif
 
-#define X86_FEATURE_XSAVE              (1 << 26)
-#define X86_FEATURE_OSXSAVE            (1 << 27)
-
 #define NUM_TILES                      8
 #define TILE_SIZE                      1024
 #define XSAVE_SIZE                     ((NUM_TILES * TILE_SIZE) + PAGE_SIZE)
@@ -128,9 +125,9 @@ static inline void check_cpuid_xsave(void)
        eax = 1;
        ecx = 0;
        cpuid(&eax, &ebx, &ecx, &edx);
-       if (!(ecx & X86_FEATURE_XSAVE))
+       if (!(ecx & CPUID_XSAVE))
                GUEST_ASSERT(!"cpuid: no CPU xsave support!");
-       if (!(ecx & X86_FEATURE_OSXSAVE))
+       if (!(ecx & CPUID_OSXSAVE))
                GUEST_ASSERT(!"cpuid: no OS xsave support!");
 }
 
@@ -333,7 +330,7 @@ int main(int argc, char *argv[])
        vm = vm_create_with_one_vcpu(&vcpu, guest_code);
 
        entry = kvm_get_supported_cpuid_entry(1);
-       TEST_REQUIRE(entry->ecx & X86_FEATURE_XSAVE);
+       TEST_REQUIRE(entry->ecx & CPUID_XSAVE);
 
        TEST_REQUIRE(kvm_get_cpuid_max_basic() >= 0xd);
 
index 56d8ab92eed49f2ccd66214a20eba8c809f81794..f4d3a042ec1c46889cf2e12400a8f7c73e5fa6db 100644 (file)
@@ -19,9 +19,6 @@
 #include "kvm_util.h"
 #include "processor.h"
 
-#define X86_FEATURE_XSAVE      (1<<26)
-#define X86_FEATURE_OSXSAVE    (1<<27)
-
 static inline bool cr4_cpuid_is_sync(void)
 {
        int func, subfunc;
@@ -36,7 +33,7 @@ static inline bool cr4_cpuid_is_sync(void)
 
        cr4 = get_cr4();
 
-       return (!!(ecx & X86_FEATURE_OSXSAVE)) == (!!(cr4 & X86_CR4_OSXSAVE));
+       return (!!(ecx & CPUID_OSXSAVE)) == (!!(cr4 & X86_CR4_OSXSAVE));
 }
 
 static void guest_code(void)
@@ -70,7 +67,7 @@ int main(int argc, char *argv[])
        struct ucall uc;
 
        entry = kvm_get_supported_cpuid_entry(1);
-       TEST_REQUIRE(entry->ecx & X86_FEATURE_XSAVE);
+       TEST_REQUIRE(entry->ecx & CPUID_XSAVE);
 
        /* Tell stdout not to buffer its content */
        setbuf(stdout, NULL);
index 2bf6851b4f426cd6984892bff4a41fd65f08271e..c804f6f041342fdbda9b18ab88bc419362491365 100644 (file)
@@ -8,7 +8,7 @@
 #include "kvm_util.h"
 #include "processor.h"
 
-#define X86_FEATURE_MWAIT (1u << 3)
+#define CPUID_MWAIT (1u << 3)
 
 enum monitor_mwait_testcases {
        MWAIT_QUIRK_DISABLED = BIT(0),
@@ -76,7 +76,7 @@ int main(int argc, char *argv[])
        cpuid = kvm_get_supported_cpuid();
 
        entry = kvm_get_supported_cpuid_index(1, 0);
-       entry->ecx &= ~X86_FEATURE_MWAIT;
+       entry->ecx &= ~CPUID_MWAIT;
        set_cpuid(cpuid, entry);
 
        vm = vm_create_with_one_vcpu(&vcpu, guest_code);
index 07253e22defdaa4fdb327df0979a9a2dd8708e24..bf7eda7722fe0571b5816ec3981d7e94c7684760 100644 (file)
@@ -19,7 +19,6 @@
 #include "test_util.h"
 
 #define INT_NR                 0x20
-#define X86_FEATURE_NRIPS      BIT(3)
 
 static_assert(ATOMIC_INT_LOCK_FREE == 2, "atomic int is not lockless");
 
@@ -203,7 +202,7 @@ int main(int argc, char *argv[])
        nested_svm_check_supported();
 
        cpuid = kvm_get_supported_cpuid_entry(0x8000000a);
-       TEST_ASSERT(cpuid->edx & X86_FEATURE_NRIPS,
+       TEST_ASSERT(cpuid->edx & CPUID_NRIPS,
                    "KVM with nSVM is supposed to unconditionally advertise nRIP Save\n");
 
        atomic_init(&nmi_stage, 0);