Re: [PATCH] rcu: Make rcu_normal_after_boot writable on RT
From: Juri Lelli <juri.lelli@redhat.com>
Date: 2021-08-06 07:41:14
Also in:
lkml, rcu
Hi, Thanks for reviewing Paul. On 05/08/21 14:08, Paul E. McKenney wrote:
On Thu, Aug 05, 2021 at 09:03:37AM -0700, Paul E. McKenney wrote:quoted
On Thu, Aug 05, 2021 at 10:01:23AM +0200, Juri Lelli wrote:quoted
Certain configurations (e.g., systems that make heavy use of netns) need to use synchronize_rcu_expedited() to service RCU grace periods even after boot. Even though synchronize_rcu_expedited() has been traditionally considered harmful for RT for the heavy use of IPIs, it is perfectly usable under certain conditions (e.g. nohz_full). Make rcupdate.rcu_normal_after_boot= again writeable on RT, 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. Signed-off-by: Juri Lelli <juri.lelli@redhat.com>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?Ah, and this will also need to be reflected in the WARN_ON_ONCE() in synchronize_rcu_expedited_wait() in kernel/rcu/tree_exp.h.
Indeed. Will add the change as soon as I receive indication about your first point. Best, Juri