Message ID | 20250407191221.28679-1-paulmck@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Commit | ec101bc1d952af86b3c896e95ef171dc3ed89426 |
Headers | show |
Series | None | expand |
Hello, Paul, On Tue, 8 Apr 2025 14:23:32 GMT, "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. > > [ paulmck: Apply Sebastian Siewior feedback. ] > > Signed-off-by: Paul E. McKenney <paulmck@kernel.org> > Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de> I pulled this from your -dev branch for 6.16. I checked and this patch is the only one changed so feel free to not re-send the whole series (I will be resending it anyway once I have all the topic branches). Also, I added your sign off as it was missing: [PATCH 03/12] rcutorture: Split out beginning and end from rcu_torture_one_read() thanks, - Joel
On Tue, Apr 08, 2025 at 02:29:19PM -0000, Joel Fernandes wrote: > Hello, Paul, > > On Tue, 8 Apr 2025 14:23:32 GMT, "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. > > > > [ paulmck: Apply Sebastian Siewior feedback. ] > > > > Signed-off-by: Paul E. McKenney <paulmck@kernel.org> > > Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de> > > I pulled this from your -dev branch for 6.16. I checked and this patch is the > only one changed so feel free to not re-send the whole series (I will be > resending it anyway once I have all the topic branches). Works for me, thank you! > Also, I added your sign off as it was missing: > [PATCH 03/12] rcutorture: Split out beginning and end from > rcu_torture_one_read() I should have caught that! Thank you for fixing it up. Thanx, Paul
diff --git a/tools/testing/selftests/rcutorture/bin/torture.sh b/tools/testing/selftests/rcutorture/bin/torture.sh index 0447c4a00cc4d..d53ee1e0ffc79 100755 --- a/tools/testing/selftests/rcutorture/bin/torture.sh +++ b/tools/testing/selftests/rcutorture/bin/torture.sh @@ -448,13 +448,17 @@ fi if test "$do_rt" = "yes" then - # With all post-boot grace periods forced to normal. - torture_bootargs="rcupdate.rcu_cpu_stall_suppress_at_boot=1 torture.disable_onoff_at_boot rcupdate.rcu_task_stall_timeout=30000 rcupdate.rcu_normal=1" - torture_set "rcurttorture" tools/testing/selftests/rcutorture/bin/kvm.sh --allcpus --duration "$duration_rcutorture" --configs "TREE03" --trust-make + # In both runs, disable testing of RCU priority boosting because + # -rt doesn't like its interaction with testing of callback + # flooding. + + # With all post-boot grace periods forced to normal (default for PREEMPT_RT). + torture_bootargs="rcupdate.rcu_cpu_stall_suppress_at_boot=1 torture.disable_onoff_at_boot rcupdate.rcu_task_stall_timeout=30000 rcutorture.test_boost=0 rcutorture.preempt_duration=0" + torture_set "rcurttorture" tools/testing/selftests/rcutorture/bin/kvm.sh --allcpus --duration "$duration_rcutorture" --configs "TREE03" --kconfig "CONFIG_PREEMPT_RT=y CONFIG_EXPERT=y CONFIG_HZ_PERIODIC=n CONFIG_NO_HZ_IDLE=y" --trust-make # With all post-boot grace periods forced to expedited. - torture_bootargs="rcupdate.rcu_cpu_stall_suppress_at_boot=1 torture.disable_onoff_at_boot rcupdate.rcu_task_stall_timeout=30000 rcupdate.rcu_expedited=1" - torture_set "rcurttorture-exp" tools/testing/selftests/rcutorture/bin/kvm.sh --allcpus --duration "$duration_rcutorture" --configs "TREE03" --trust-make + torture_bootargs="rcupdate.rcu_cpu_stall_suppress_at_boot=1 torture.disable_onoff_at_boot rcupdate.rcu_task_stall_timeout=30000 rcutorture.test_boost=0 rcupdate.rcu_normal_after_boot=0 rcupdate.rcu_expedited=1 rcutorture.preempt_duration=0" + torture_set "rcurttorture-exp" tools/testing/selftests/rcutorture/bin/kvm.sh --allcpus --duration "$duration_rcutorture" --configs "TREE03" --kconfig "CONFIG_PREEMPT_RT=y CONFIG_EXPERT=y CONFIG_HZ_PERIODIC=n CONFIG_NO_HZ_FULL=y" --trust-make fi if test "$do_srcu_lockdep" = "yes"
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. [ paulmck: Apply Sebastian Siewior feedback. ] Signed-off-by: Paul E. McKenney <paulmck@kernel.org> Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de> --- tools/testing/selftests/rcutorture/bin/torture.sh | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-)