cpufreq: interactive: handle errors from cpufreq_frequency_table_target
Add checks for error return from cpufreq_frequency_table_target, and be less noisy on the existing call with an error check. CPU hotplug and system shutdown may cause this call to return -EINVAL. Bug: 8613560 Change-Id: Id78d8829920462c0db1c7e14e717d91740d6cb44 Signed-off-by: Todd Poynor <toddpoynor@google.com>
This commit is contained in:
@@ -246,9 +246,10 @@ static unsigned int choose_freq(
|
||||
* than or equal to the target load.
|
||||
*/
|
||||
|
||||
cpufreq_frequency_table_target(
|
||||
pcpu->policy, pcpu->freq_table, loadadjfreq / tl,
|
||||
CPUFREQ_RELATION_L, &index);
|
||||
if (cpufreq_frequency_table_target(
|
||||
pcpu->policy, pcpu->freq_table, loadadjfreq / tl,
|
||||
CPUFREQ_RELATION_L, &index))
|
||||
break;
|
||||
freq = pcpu->freq_table[index].frequency;
|
||||
|
||||
if (freq > prevfreq) {
|
||||
@@ -260,10 +261,11 @@ static unsigned int choose_freq(
|
||||
* Find the highest frequency that is less
|
||||
* than freqmax.
|
||||
*/
|
||||
cpufreq_frequency_table_target(
|
||||
pcpu->policy, pcpu->freq_table,
|
||||
freqmax - 1, CPUFREQ_RELATION_H,
|
||||
&index);
|
||||
if (cpufreq_frequency_table_target(
|
||||
pcpu->policy, pcpu->freq_table,
|
||||
freqmax - 1, CPUFREQ_RELATION_H,
|
||||
&index))
|
||||
break;
|
||||
freq = pcpu->freq_table[index].frequency;
|
||||
|
||||
if (freq == freqmin) {
|
||||
@@ -286,10 +288,11 @@ static unsigned int choose_freq(
|
||||
* Find the lowest frequency that is higher
|
||||
* than freqmin.
|
||||
*/
|
||||
cpufreq_frequency_table_target(
|
||||
pcpu->policy, pcpu->freq_table,
|
||||
freqmin + 1, CPUFREQ_RELATION_L,
|
||||
&index);
|
||||
if (cpufreq_frequency_table_target(
|
||||
pcpu->policy, pcpu->freq_table,
|
||||
freqmin + 1, CPUFREQ_RELATION_L,
|
||||
&index))
|
||||
break;
|
||||
freq = pcpu->freq_table[index].frequency;
|
||||
|
||||
/*
|
||||
@@ -388,11 +391,8 @@ static void cpufreq_interactive_timer(unsigned long data)
|
||||
|
||||
if (cpufreq_frequency_table_target(pcpu->policy, pcpu->freq_table,
|
||||
new_freq, CPUFREQ_RELATION_L,
|
||||
&index)) {
|
||||
pr_warn_once("timer %d: cpufreq_frequency_table_target error\n",
|
||||
(int) data);
|
||||
&index))
|
||||
goto rearm;
|
||||
}
|
||||
|
||||
new_freq = pcpu->freq_table[index].frequency;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user