Re: [PATCH rcu 11/14] rcu: Make rcu_normal_after_boot writable again

From: Paul E. McKenney
Date: Thu Sep 16 2021 - 13:52:13 EST


On Thu, Sep 16, 2021 at 04:27:15PM +0200, Peter Zijlstra wrote:
> On Thu, Sep 16, 2021 at 06:57:12AM -0700, Paul E. McKenney wrote:
> > RT systems they avoid expedited grace periods by booting with either
> > the rcupdate.rcu_normal or the rcupdate.rcu_normal_after_boot kernel
> > boot parameters. And here is the definition for the latter:
> >
> > static int rcu_normal_after_boot = IS_ENABLED(CONFIG_PREEMPT_RT);
> >
> > In other words, RT systems shut off expedited grace periods by default,
> > and are thus free to use nohz_full CPU or not, as they choose. When using
> > nohz_full, they can also enable expedited grace periods by booting with
> > rcupdate.rcu_normal_after_boot=0. Or not, sysadm's choice.
> >
> > So I am not seeing a problem here. What am I missing?
>
> That wasn't at all clear to me from the Changelog. I thought it was
> enabling expedited crud for RT.

This paragraph of the current commit log covers that point:

Make rcupdate.rcu_normal_after_boot= again writeable on RT (if
NO_HZ_ FULL is defined), but keep its default value to 1 (enabled)
to avoid regressions. Users who need synchronize_rcu_expedited()
will boot with rcupdate.rcu_normal_after_ boot=0 in the kernel
cmdline.

Does that cover it from your viewpoint? If not, any suggested changes
for clarification?

Thanx, Paul