Re: [PATCH v7 1/1] rcu: Simplify rcu_init_nohz() cpumask handling

From: Frederic Weisbecker
Date: Wed Sep 14 2022 - 06:46:56 EST


On Tue, Sep 13, 2022 at 11:00:36AM +0800, Zhen Lei wrote:
> In kernels built with either CONFIG_RCU_NOCB_CPU_DEFAULT_ALL=y or
> CONFIG_NO_HZ_FULL=y, additional CPUs must be added to rcu_nocb_mask.
> Except that kernels booted without the rcu_nocbs= will not have
> allocated rcu_nocb_mask. And the current rcu_init_nohz() function uses
> its need_rcu_nocb_mask and offload_all local variables to track the
> rcu_nocb and nohz_full state.
>
> But there is a much simpler approach, namely creating a cpumask pointer
> to track the default and then using cpumask_available() to check the
> rcu_nocb_mask state. This commit takes this approach, thereby simplifying
> and shortening the rcu_init_nohz() function.
>
> Signed-off-by: Zhen Lei <thunder.leizhen@xxxxxxxxxx>
> Reviewed-by: Joel Fernandes (Google) <joel@xxxxxxxxxxxxxxxxx>
> Acked-by: Frederic Weisbecker <frederic@xxxxxxxxxx>

Looks good, thanks!