This patch fixes overflow issue when calculating the desired_perf.

Signed-off-by: Hoan Tran <[email protected]>
---
 drivers/cpufreq/cppc_cpufreq.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/cpufreq/cppc_cpufreq.c b/drivers/cpufreq/cppc_cpufreq.c
index 894e465..3e0961e 100644
--- a/drivers/cpufreq/cppc_cpufreq.c
+++ b/drivers/cpufreq/cppc_cpufreq.c
@@ -84,7 +84,8 @@ static int cppc_cpufreq_set_target(struct cpufreq_policy 
*policy,
 
        cpu = all_cpu_data[policy->cpu];
 
-       cpu->perf_ctrls.desired_perf = target_freq * policy->max / 
cppc_dmi_max_khz;
+       cpu->perf_ctrls.desired_perf =
+               (u64)target_freq * policy->max / cppc_dmi_max_khz;
        freqs.old = policy->cur;
        freqs.new = target_freq;
 
-- 
1.9.1

Reply via email to