Re: [PATCH] rcu: Make rcu_normal_after_boot writable on RT

From: Juri Lelli
Date: Mon Aug 09 2021 - 04:37:23 EST


On 06/08/21 10:44, Paul E. McKenney wrote:
> On Fri, Aug 06, 2021 at 10:04:55AM +0200, Sebastian Andrzej Siewior wrote:
> > On 2021-08-05 09:03:37 [-0700], Paul E. McKenney wrote:
> > > Makes sense to me!
> > >
> > > But would another of the -rt people be willing to give an Acked-by?
> > > For example, maybe they would prefer this kernel boot parameter to be
> > > exposed only if (!PREEMPT_RT || NO_HZ_FULL). Or are there !NO_HZ_FULL
> > > situations where rcu_normal_after_boot makes sense?
> >
> > Julia crafted that "rcu_normal_after_boot = 1" for RT after we had more
> > and more synchronize_rcu_expedited() users popping up. I would like to
> > keep that part (default value) since it good to have for most users.
> >
> > I don't mind removing CONFIG_PREEMPT_RT part here if there are legitimate
> > use cases for using "rcu_normal_after_boot = 0".
> > Paul suggested initially to restrict that option for PREEMPT_RT and I
> > would follow here Paul's guidance to either remove it or restrict it to
> > NO_HZ_FULL in RT's case (as suggested).
>
> Given what I know now, I suggest the following:
>
> o Restrict the option to !PREEMPT_RT unless NO_HZ_FULL.
> Maybe "!defined(CONFIG_PREEMPT_RT) || defined(CONFIG_NO_HZ_FULL)".
>
> If there is some non-NO_HZ_FULL PREEMPT_RT configuration that
> tolerates expedited grace periods, this would need to change.
>
> o Change the permissions from "0" to "0444", if desired. If you
> would rather not, I can do this in a follow-up patch. (No idea
> why I let such an ugly serviceability issue through, but the
> previous pair of module_param() instances have the same problem.)
>
> Anything I am missing?

Not that I can think of right now. :)

Will implement your suggestions and submit v2 soon. Thank again to you
and Sebastian for the review!

Best,
Juri