[PATCH] cpufreq: intel_pstate: Avoid using CPPC when ACPI CPC is not valid

From: Kai-Heng Feng
Date: Thu Nov 18 2021 - 07:47:03 EST


If ACPI CPC is not valid, dereference cpc_desc in cppc_get_perf() causes
a NULL pointer dereference. So avoid using CPPC for that scenario.

Fixes: 46573fd6369f ("cpufreq: intel_pstate: hybrid: Rework HWP calibration")
Signed-off-by: Kai-Heng Feng <kai.heng.feng@xxxxxxxxxxxxx>
---
drivers/cpufreq/intel_pstate.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
index 815df3daae9df..24c7d705b99b6 100644
--- a/drivers/cpufreq/intel_pstate.c
+++ b/drivers/cpufreq/intel_pstate.c
@@ -3369,7 +3369,7 @@ static int __init intel_pstate_init(void)
if (!default_driver)
default_driver = &intel_pstate;

- if (boot_cpu_has(X86_FEATURE_HYBRID_CPU))
+ if (boot_cpu_has(X86_FEATURE_HYBRID_CPU) && acpi_cpc_valid())
intel_pstate_cppc_set_cpu_scaling();

goto hwp_cpu_matched;
--
2.32.0