summaryrefslogtreecommitdiffstats
path: root/drivers/cpufreq/cppc_cpufreq.c
diff options
context:
space:
mode:
authorHoan Tran <hotran@apm.com>2016-09-15 01:08:28 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2016-09-16 23:59:19 +0200
commitf89f4147f76f91bfff6f32890fc34148178f144d (patch)
tree24b79bb78cb49335c3060f200b69b96a044ab150 /drivers/cpufreq/cppc_cpufreq.c
parentcpufreq: ti: Use generic platdev driver (diff)
downloadlinux-f89f4147f76f91bfff6f32890fc34148178f144d.tar.xz
linux-f89f4147f76f91bfff6f32890fc34148178f144d.zip
cpufreq: CPPC: Avoid overflow when calculating desired_perf
This patch fixes overflow issue when calculating the desired_perf. Fixes: ad38677df44b (cpufreq: CPPC: Force reporting values in KHz to fix user space interface) Signed-off-by: Hoan Tran <hotran@apm.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/cpufreq/cppc_cpufreq.c')
-rw-r--r--drivers/cpufreq/cppc_cpufreq.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/cpufreq/cppc_cpufreq.c b/drivers/cpufreq/cppc_cpufreq.c
index 6debc189a9c9..99db4227ae38 100644
--- a/drivers/cpufreq/cppc_cpufreq.c
+++ b/drivers/cpufreq/cppc_cpufreq.c
@@ -84,7 +84,7 @@ 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;