Re: [PATCH v2 04/12] rcutorture: Make torture.sh --do-rt use CONFIG_PREEMPT_RT

Sebastian Andrzej Siewior
2025-04-02T07:42:14Z

On 2025-03-31 14:03:06 [-0700], Paul E. McKenney wrote:
> The torture.sh --do-rt command-line parameter is intended to mimic -rt
> kernels. Now that CONFIG_PREEMPT_RT is upstream, this commit makes this
> mimicking more precise.
>
> Note that testing of RCU priority boosting is disabled in favor
> of forward-progress testing of RCU callbacks. If it turns out to be
> possible to make kernels built with CONFIG_PREEMPT_RT=y to tolerate
> testing of both, both will be enabled.

Not sure what you point at here: You can build a PREEMPT_RT kernel and
RCU boosting is enabled by default. You could disable it if needed.

Config wise you set CONFIG_PREEMPT_LAZY=n but in general
CONFIG_PREEMPT_LAZY=y should be used if possible. The preemption while
holding a sleeping spinlock is somehow bad for performance if a lot of
threads ask for it. But then it probably doesn't matter for testing.

You do set rcupdate.rcu_normal and rcupdate.rcu_expedited but RT has
rcu_normal_after_boot set by default. Not sure if this makes any
difference but I *think* that normal wins here.

> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
> Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>

Sebastian