[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7111f9d1-62f2-504c-a7ba-958b1c659cc8@arm.com>
Date: Tue, 2 Jul 2019 10:34:49 +0100
From: Valentin Schneider <valentin.schneider@....com>
To: Vincent Guittot <vincent.guittot@...aro.org>,
linux-kernel@...r.kernel.org, mingo@...hat.com,
peterz@...radead.org
Subject: Re: [PATCH v2] sched/fair: fix imbalance due to CPU affinity
On 01/07/2019 16:47, Vincent Guittot wrote:
> The load_balance() has a dedicated mecanism to detect when an imbalance
> is due to CPU affinity and must be handled at parent level. In this case,
> the imbalance field of the parent's sched_group is set.
>
> The description of sg_imbalanced() gives a typical example of two groups
> of 4 CPUs each and 4 tasks each with a cpumask covering 1 CPU of the first
> group and 3 CPUs of the second group. Something like:
>
> { 0 1 2 3 } { 4 5 6 7 }
> * * * *
>
> But the load_balance fails to fix this UC on my octo cores system
> made of 2 clusters of quad cores.
>
> Whereas the load_balance is able to detect that the imbalanced is due to
> CPU affinity, it fails to fix it because the imbalance field is cleared
> before letting parent level a chance to run. In fact, when the imbalance is
> detected, the load_balance reruns without the CPU with pinned tasks. But
> there is no other running tasks in the situation described above and
> everything looks balanced this time so the imbalance field is immediately
> cleared.
>
> The imbalance field should not be cleared if there is no other task to move
> when the imbalance is detected.
>
> Signed-off-by: Vincent Guittot <vincent.guittot@...aro.org>
Does that want a
Cc: stable@...r.kernel.org
Fixes: afdeee0510db ("sched: Fix imbalance flag reset")
?
Powered by blists - more mailing lists