summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDennis Beier <nanovim@gmail.com>2025-08-30 16:43:59 +0200
committerViresh Kumar <viresh.kumar@linaro.org>2025-09-01 10:50:28 +0530
commit592532a77b736b5153e0c2e4c74aa50af0a352ab (patch)
treeef045dcb4c1a4bc09ba4171c2adf30d1ff461c26
parent7bc0084632dda2907ff1d021dff36ffbdd83468c (diff)
cpufreq/longhaul: handle NULL policy in longhaul_exit
longhaul_exit() was calling cpufreq_cpu_get(0) without checking for a NULL policy pointer. On some systems, this could lead to a NULL dereference and a kernel warning or panic. This patch adds a check using unlikely() and returns early if the policy is NULL. Bugzilla: #219962 Signed-off-by: Dennis Beier <nanovim@gmail.com> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
-rw-r--r--drivers/cpufreq/longhaul.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/cpufreq/longhaul.c b/drivers/cpufreq/longhaul.c
index ba0e08c8486a..49e76b44468a 100644
--- a/drivers/cpufreq/longhaul.c
+++ b/drivers/cpufreq/longhaul.c
@@ -953,6 +953,9 @@ static void __exit longhaul_exit(void)
struct cpufreq_policy *policy = cpufreq_cpu_get(0);
int i;
+ if (unlikely(!policy))
+ return;
+
for (i = 0; i < numscales; i++) {
if (mults[i] == maxmult) {
struct cpufreq_freqs freqs;