]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
x86/cpu: Remove unnecessary MwAIT leaf checks
authorDave Hansen <dave.hansen@linux.intel.com>
Fri, 13 Dec 2024 20:50:30 +0000 (12:50 -0800)
committerDave Hansen <dave.hansen@linux.intel.com>
Wed, 18 Dec 2024 14:17:30 +0000 (06:17 -0800)
The CPUID leaf dependency checker will remove X86_FEATURE_MWAIT if
the CPUID level is below the required level (CPUID_MWAIT_LEAF).
Thus, if you check X86_FEATURE_MWAIT you do not need to also
check the CPUID level.

Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Link: https://lore.kernel.org/all/20241213205030.9B42B458%40davehans-spike.ostc.intel.com
arch/x86/kernel/hpet.c
arch/x86/kernel/smpboot.c
drivers/acpi/acpi_pad.c
drivers/idle/intel_idle.c

index 25935041fee1e5545a82daeb8743e65d48ee77ab..953de5b6466942bc1b090dfc6090e94e3087899a 100644 (file)
@@ -928,9 +928,6 @@ static bool __init mwait_pc10_supported(void)
        if (!cpu_feature_enabled(X86_FEATURE_MWAIT))
                return false;
 
-       if (boot_cpu_data.cpuid_level < CPUID_MWAIT_LEAF)
-               return false;
-
        cpuid(CPUID_MWAIT_LEAF, &eax, &ebx, &ecx, &mwait_substates);
 
        return (ecx & CPUID5_ECX_EXTENSIONS_SUPPORTED) &&
index 52b0d308eed96d36a88a49e32423932cd2f48ae3..116c46f9ecbb37354c70993fae7ac289679cacbc 100644 (file)
@@ -1292,8 +1292,6 @@ static inline void mwait_play_dead(void)
                return;
        if (!this_cpu_has(X86_FEATURE_CLFLUSH))
                return;
-       if (__this_cpu_read(cpu_info.cpuid_level) < CPUID_MWAIT_LEAF)
-               return;
 
        eax = CPUID_MWAIT_LEAF;
        ecx = 0;
index b561974673527954d01e12655e193b24c30997fa..f3cffae0c14e61cbd45e2b4047e5c08ef7045ab0 100644 (file)
@@ -47,8 +47,6 @@ static void power_saving_mwait_init(void)
 
        if (!boot_cpu_has(X86_FEATURE_MWAIT))
                return;
-       if (boot_cpu_data.cpuid_level < CPUID_MWAIT_LEAF)
-               return;
 
        cpuid(CPUID_MWAIT_LEAF, &eax, &ebx, &ecx, &edx);
 
index 5d8ed1a68447e4289679d1889accf41ecb03453c..efa32d28ed935631a0591e5772bd68e4ab2f3eb0 100644 (file)
@@ -2317,9 +2317,6 @@ static int __init intel_idle_init(void)
                        return -ENODEV;
        }
 
-       if (boot_cpu_data.cpuid_level < CPUID_MWAIT_LEAF)
-               return -ENODEV;
-
        cpuid(CPUID_MWAIT_LEAF, &eax, &ebx, &ecx, &mwait_substates);
 
        if (!(ecx & CPUID5_ECX_EXTENSIONS_SUPPORTED) ||