lkml.org 
[lkml]   [2018]   [Jun]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] sched/util_est: fix util_est_dequeue() for throttled cfs rq
On Thu, Jun 14, 2018 at 12:32:32PM +0100, Patrick Bellasi wrote:
> On 14-Jun 12:33, Vincent Guittot wrote:
> > When a cfs_rq is throttled, parent cfs_rq->nr_running is decreased and
> > everything happens at cfs_rq level. Currently util_est stays unchanged
> > in such case and it keeps accounting the utilization of throttled tasks.
> > This can somewhat make sense as we don't dequeue tasks but only throttled
> > cfs_rq.

> > If a task of another group is enqueued/dequeued and root cfs_rq becomes
> > idle during the dequeue, util_est will be cleared whereas it was
> > accounting util_est of throttled tasks before.

> > So the behavior of util_est
> > is not always the same regarding throttled tasks and depends of side
> > activity. Furthermore, util_est will not be updated when the cfs_rq is
> > unthrottled

> > as everything happens at cfs rq level. Main results is that
> > util_est will stay null whereas we now have running tasks. We have to wait
> > for the next dequeue/enqueue of the previously throttled tasks to get an
> > up to date util_est.
> >
> > Remove the assumption that cfs_rq's estimated utilization of a CPU is 0
> > if there is no running task so the util_est of a task remains until the
> > latter is dequeued even if its cfs_rq has been throttled.

> > Fixes: 7f65ea42eb00 ("sched/fair: Add util_est on top of PELT")
> > Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>

> LGTM:
>
> Reviewed-by: Patrick Bellasi <patrick.bellasi@arm.com>

Thanks guys!

\
 
 \ /
  Last update: 2018-06-21 21:09    [W:0.070 / U:0.064 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site