Re: [PATCH 0/7 v4] move update blocked load outside newidle_balance
From: Valentin Schneider
Date: Wed Feb 24 2021 - 13:48:18 EST
On 24/02/21 14:30, Vincent Guittot wrote:
>
Joel reported long preempt and irq off sequence in newidle_balance because
>
of a large number of CPU cgroups in use and having to be updated. This
>
patchset moves the update outside newidle_imblance. This enables to early
>
abort during the updates in case of pending irq as an example.
>
>
Instead of kicking a normal ILB that will wakes up CPU which is already
>
idle, patch 6 triggers the update of statistics in the idle thread of
>
the CPU before selecting and entering an idle state.
>
>
Changes on v4:
>
- Add a dedicated bit for updating blocked load when entering idle.
>
This simplifies the management of concurrency with kick_ilb.
>
I believe that solves the issues vs nohz balance.
One last thing for patch 7: mayhaps we could do a tad better to avoid
duplicate updates going through a heapful of leaf cfs rqs, see
http://lore.kernel.org/r/jhj4kiht7oh.mognet@xxxxxxx
Otherwise, feel free to add to the lot:
Reviewed-by: Valentin Schneider <valentin.schneider@xxxxxxx>