]> www.infradead.org Git - users/hch/misc.git/commit
cpufreq: CPPC: Fix wrong return value in cppc_get_cpu_power()
authorJinjie Ruan <ruanjinjie@huawei.com>
Wed, 6 Nov 2024 01:01:11 +0000 (09:01 +0800)
committerViresh Kumar <viresh.kumar@linaro.org>
Mon, 11 Nov 2024 04:15:16 +0000 (09:45 +0530)
commitb51eb0874d8170028434fbd259e80b78ed9b8eca
tree2061ae645c8717a40dee485ad88518334be1c1d5
parentbe392aa80f1e5b0b65ccc2a540b9304fefcfe3d8
cpufreq: CPPC: Fix wrong return value in cppc_get_cpu_power()

cppc_get_cpu_power() return 0 if the policy is NULL. Then in
em_create_perf_table(), the later zero check for power is not valid
as power is uninitialized. As Quentin pointed out, kernel energy model
core check the return value of active_power() first, so if the callback
failed it should tell the core. So return -EINVAL to fix it.

Fixes: a78e72075642 ("cpufreq: CPPC: Fix possible null-ptr-deref for cpufreq_cpu_get_raw()")
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Suggested-by: Quentin Perret <qperret@google.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
drivers/cpufreq/cppc_cpufreq.c