From: Todd Poynor Date: Fri, 22 Mar 2013 03:46:00 +0000 (-0700) Subject: cpufreq: interactive: base above_hispeed_delay on target freq, not current X-Git-Tag: firefly_0821_release~2958^2~269 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=75f9b06a38c833ad66dd41e8e066aa0012b2d421;p=firefly-linux-kernel-4.4.55.git cpufreq: interactive: base above_hispeed_delay on target freq, not current Time to wait should be based on the intended target speed, not the actual speed (which may be held high by another CPU). Change-Id: Ifc5bb55d06adddb9a02af90af05398a78f282272 Reported-by: Arve Hjønnevåg Signed-off-by: Todd Poynor --- diff --git a/drivers/cpufreq/cpufreq_interactive.c b/drivers/cpufreq/cpufreq_interactive.c index 3dc067e6eb45..9dd4d38f2c9e 100644 --- a/drivers/cpufreq/cpufreq_interactive.c +++ b/drivers/cpufreq/cpufreq_interactive.c @@ -377,7 +377,7 @@ static void cpufreq_interactive_timer(unsigned long data) if (pcpu->target_freq >= hispeed_freq && new_freq > pcpu->target_freq && now - pcpu->hispeed_validate_time < - freq_to_above_hispeed_delay(pcpu->policy->cur)) { + freq_to_above_hispeed_delay(pcpu->target_freq)) { trace_cpufreq_interactive_notyet( data, cpu_load, pcpu->target_freq, pcpu->policy->cur, new_freq);