From: Paul E. McKenney Date: Wed, 5 Nov 2025 20:32:16 +0000 (-0800) Subject: rcutorture: Make srcu{,d}_torture_init() announce the SRCU type X-Git-Tag: v6.19-rc1~182^2~2^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=609460a6db2016d9098b4bf50b3871302f5cc6ef;p=thirdparty%2Fkernel%2Flinux.git rcutorture: Make srcu{,d}_torture_init() announce the SRCU type This commit causes rcutorture's srcu_torture_init() and srcud_torture_init() functions to announce on the console log which variant of SRCU is being tortured, for example: "torture: srcud_torture_init fast SRCU". [ paulmck: Apply feedback from kernel test robot. ] Signed-off-by: Paul E. McKenney Signed-off-by: Frederic Weisbecker --- diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c index ad9fdb996a1c1..b619c740306b4 100644 --- a/kernel/rcu/rcutorture.c +++ b/kernel/rcu/rcutorture.c @@ -701,10 +701,18 @@ static struct rcu_torture_ops srcud_ops; static void srcu_torture_init(void) { rcu_sync_torture_init(); - if (reader_flavor & SRCU_READ_FLAVOR_FAST) + if (!reader_flavor || (reader_flavor & SRCU_READ_FLAVOR_NORMAL)) + VERBOSE_TOROUT_STRING("srcu_torture_init normal SRCU"); + if (reader_flavor & SRCU_READ_FLAVOR_NMI) + VERBOSE_TOROUT_STRING("srcu_torture_init NMI-safe SRCU"); + if (reader_flavor & SRCU_READ_FLAVOR_FAST) { srcu_ctlp = &srcu_ctlf; - if (reader_flavor & SRCU_READ_FLAVOR_FAST_UPDOWN) + VERBOSE_TOROUT_STRING("srcu_torture_init fast SRCU"); + } + if (reader_flavor & SRCU_READ_FLAVOR_FAST_UPDOWN) { srcu_ctlp = &srcu_ctlfud; + VERBOSE_TOROUT_STRING("srcu_torture_init fast-up/down SRCU"); + } } static void srcu_get_gp_data(int *flags, unsigned long *gp_seq) @@ -920,12 +928,21 @@ static struct rcu_torture_ops srcu_ops = { static void srcud_torture_init(void) { rcu_sync_torture_init(); - if (reader_flavor & SRCU_READ_FLAVOR_FAST_UPDOWN) - WARN_ON(init_srcu_struct_fast_updown(&srcu_ctld)); - else if (reader_flavor & SRCU_READ_FLAVOR_FAST) + if (!reader_flavor || (reader_flavor & SRCU_READ_FLAVOR_NORMAL)) { + WARN_ON(init_srcu_struct(&srcu_ctld)); + VERBOSE_TOROUT_STRING("srcud_torture_init normal SRCU"); + } else if (reader_flavor & SRCU_READ_FLAVOR_NMI) { + WARN_ON(init_srcu_struct(&srcu_ctld)); + VERBOSE_TOROUT_STRING("srcud_torture_init NMI-safe SRCU"); + } else if (reader_flavor & SRCU_READ_FLAVOR_FAST) { WARN_ON(init_srcu_struct_fast(&srcu_ctld)); - else + VERBOSE_TOROUT_STRING("srcud_torture_init fast SRCU"); + } else if (reader_flavor & SRCU_READ_FLAVOR_FAST_UPDOWN) { + WARN_ON(init_srcu_struct_fast_updown(&srcu_ctld)); + VERBOSE_TOROUT_STRING("srcud_torture_init fast-up/down SRCU"); + } else { WARN_ON(init_srcu_struct(&srcu_ctld)); + } srcu_ctlp = &srcu_ctld; }