Re: [PATCH 00/19] rcu/context-tracking: Merge RCU eqs-dynticks counter to context tracking

From: nicolas saenz julienne
Date: Fri Mar 11 2022 - 06:38:09 EST


On Wed, 2022-03-02 at 16:47 +0100, Frederic Weisbecker wrote:
> This mixes up the RCU dynticks counter and the context tracking state
> updates into a single atomic instruction. This may serve several
> purposes:
>
> 1) Improve CPU isolation with deferring some disturbances until sensitive
> userspace workload completes and goes to the kernel. This can take
> several forms, for example smp_call_function_housekeeping() or
> on_each_housekeeping_cpu() to enqueue and execute work on all
> housekeeping CPUs. Then an atomic operation on ct->state can defer
> the work on nohz_full CPUs until they run in kernel (or IPI them
> if they are in kernel mode), see this proposal by Peter:
> https://lore.kernel.org/all/20210929151723.162004989@xxxxxxxxxxxxx/#r
>
> 2) Unearth sysidle (https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git/commit/?h=sysidle.2017.05.11a&id=fe5ac724d81a3c7803e60c2232718f212f3f38d4)
> This feature allowed to shutdown the tick on the last housekeeping
> CPU once the rest of the system is fully idle. We needed some proper
> fully ordered context tracking for that.
>
> Inspired by Peterz: https://lore.kernel.org/all/20210929151723.162004989@xxxxxxxxxxxxx
>
> git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
> rcu/context-tracking
>
> HEAD: e4eaff86ec91c1cbde9a113cf5232dac9f897337
>
> Thanks,
> Frederic
> ---

I've been testing patches 1 to 18 on my nohz_full setup. Everything is looking
good so far.

Regards,
Nicolas