Commit 519252e
sched/fair: Fix NOHZ next idle balance
[ Upstream commit 3ea2f09 ]
With commit:
'b7031a02ec75 ("sched/fair: Add NOHZ_STATS_KICK")'
rebalance_domains of the local cfs_rq happens before others idle cpus have
updated nohz.next_balance and its value is overwritten.
Move the update of nohz.next_balance for other idles cpus before balancing
and updating the next_balance of local cfs_rq.
Also, the nohz.next_balance is now updated only if all idle cpus got a
chance to rebalance their domains and the idle balance has not been aborted
because of new activities on the CPU. In case of need_resched, the idle
load balance will be kick the next jiffie in order to address remaining
ilb.
Fixes: b7031a0 ("sched/fair: Add NOHZ_STATS_KICK")
Reported-by: Peng Liu <iwtbavbm@gmail.com>
Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
Acked-by: Mel Gorman <mgorman@suse.de>
Link: https://lkml.kernel.org/r/20200609123748.18636-1-vincent.guittot@linaro.org
Signed-off-by: Sasha Levin <sashal@kernel.org>1 parent 40f9816 commit 519252e
1 file changed
Lines changed: 14 additions & 9 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9208 | 9208 | | |
9209 | 9209 | | |
9210 | 9210 | | |
9211 | | - | |
| 9211 | + | |
| 9212 | + | |
| 9213 | + | |
| 9214 | + | |
| 9215 | + | |
| 9216 | + | |
9212 | 9217 | | |
9213 | 9218 | | |
9214 | 9219 | | |
| |||
9503 | 9508 | | |
9504 | 9509 | | |
9505 | 9510 | | |
| 9511 | + | |
| 9512 | + | |
| 9513 | + | |
| 9514 | + | |
| 9515 | + | |
| 9516 | + | |
| 9517 | + | |
| 9518 | + | |
9506 | 9519 | | |
9507 | 9520 | | |
9508 | 9521 | | |
| |||
9523 | 9536 | | |
9524 | 9537 | | |
9525 | 9538 | | |
9526 | | - | |
9527 | | - | |
9528 | | - | |
9529 | | - | |
9530 | | - | |
9531 | | - | |
9532 | | - | |
9533 | | - | |
9534 | 9539 | | |
9535 | 9540 | | |
9536 | 9541 | | |
| |||
0 commit comments