On 06/07/17 21:43, Joel Fernandes wrote: > On Tue, Jul 4, 2017 at 10:34 AM, Patrick Bellasi > <patrick.bell...@arm.com> wrote:
[...] > > @@ -304,6 +304,12 @@ static void sugov_update_shared(struct > > update_util_data *hook, u64 time, > > > > sg_cpu->util = util; > > sg_cpu->max = max; > > + > > + /* CPU is entering IDLE, reset flags without triggering an update */ > > + if (unlikely(flags & SCHED_CPUFREQ_IDLE)) { > > + sg_cpu->flags = 0; > > + goto done; > > + } > > Instead of defining a new flag for idle, wouldn't another way be to > just clear the flag from the RT scheduling class with an extra call to > cpufreq_update_util with flags = 0 during dequeue_rt_entity? That > seems to me to be also the right place to clear the flag since the > flag is set in the corresponding class to begin with. > Make sense to me too. Also considering that for DL (with my patches) we don't generally want to clear the flag at dequeue time, but only when the 0-lag timer fires. Best, - Juri