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