From: Colin Ian King <[email protected]>

Currently there is an unlikely case where cpufreq_cpu_get returns a
null policy and this will cause a null pointer dereference later on.
Fix this by adding a null check and adding an error return.

Addresses-Coverity: ("Dereference null return")
Fixes: b43a7ffbf33b ("cpufreq: Notify all policy->cpus in 
cpufreq_notify_transition()")
Signed-off-by: Colin Ian King <[email protected]>
---
 drivers/cpufreq/powernow-k8.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/cpufreq/powernow-k8.c b/drivers/cpufreq/powernow-k8.c
index 0acc9e241cd7..c5368545ba1f 100644
--- a/drivers/cpufreq/powernow-k8.c
+++ b/drivers/cpufreq/powernow-k8.c
@@ -913,6 +913,8 @@ static int transition_frequency_fidvid(struct 
powernow_k8_data *data,
        freqs.new = find_khz_freq_from_fid(fid);
 
        policy = cpufreq_cpu_get(smp_processor_id());
+       if (!policy)
+               return 1;
        cpufreq_cpu_put(policy);
 
        cpufreq_freq_transition_begin(policy, &freqs);
-- 
2.29.2

Reply via email to