Re: [PATCH 0/2] schd/fair: fix stalled cfs_rq->tg_load_avg_contrib

From: Vincent Guittot
Date: Thu May 27 2021 - 10:19:28 EST


Hi Odin,

On Thu, 27 May 2021 at 14:29, Vincent Guittot
<vincent.guittot@xxxxxxxxxx> wrote:
>
> Odin reported some fairness problem between cgroup because of stalled
> value in cfs_rq->tg_load_avg_contrib:
>
> https://lkml.org/lkml/2021/5/18/566
>
>
> 2 problems generated this situation:
> -1st: After propagating load in the hierarchy, load_sum can be null
> whereas load_avg isn't so the cfs_rq is removed whereas it still
> contribute to th tg's load
> -2nd: cfs_rq->tg_load_avg_contrib was not always updated after
> significant changes like becoming null because cfs_rq had already
> been updated when propagating a child load.
>

This series fixes the problem triggered by your 1st script on my test
machine. But could you confirm that this patchset also fixes the
problem on yours

Regards,
Vincent

>
> Vincent Guittot (2):
> sched/fair: keep load_avg and load_sum synced
> sched/fair: make sure to update tg contrib for blocked load
>
> kernel/sched/fair.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> --
> 2.17.1
>