|
@@ -282,8 +282,12 @@ static void sugov_update_single(struct update_util_data *hook, u64 time,
|
|
* Do not reduce the frequency if the CPU has not been idle
|
|
* Do not reduce the frequency if the CPU has not been idle
|
|
* recently, as the reduction is likely to be premature then.
|
|
* recently, as the reduction is likely to be premature then.
|
|
*/
|
|
*/
|
|
- if (busy && next_f < sg_policy->next_freq)
|
|
|
|
|
|
+ if (busy && next_f < sg_policy->next_freq) {
|
|
next_f = sg_policy->next_freq;
|
|
next_f = sg_policy->next_freq;
|
|
|
|
+
|
|
|
|
+ /* Reset cached freq as next_freq has changed */
|
|
|
|
+ sg_policy->cached_raw_freq = 0;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
sugov_update_commit(sg_policy, time, next_f);
|
|
sugov_update_commit(sg_policy, time, next_f);
|
|
}
|
|
}
|