[PATCH RT 4.19] rcutorture: Fix oops when selecting non-default torture_type

From: Scott Wood
Date: Thu Mar 21 2019 - 23:21:37 EST


rcu_bh is disabled on PREEMPT_RT via a stub ops that has no name. Thus,
if a torture_type other than "rcu" is used, rcu_torture_init() will
pass NULL to strcmp() when iterating over torture_ops[], and oops.

Signed-off-by: Scott Wood <swood@xxxxxxxxxx>
---
With this applied to 4.19.25-rt16 and specifying torture_type=sched,
similar rcutorture failures are seen as with 5.0.3-rt1 (in which standard
torture_cype=rcu no longer has .extendables=0 and thus stresses similar
paths).

kernel/rcu/rcutorture.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c
index 7d2a615601e7..408d03048911 100644
--- a/kernel/rcu/rcutorture.c
+++ b/kernel/rcu/rcutorture.c
@@ -479,6 +479,7 @@ static struct rcu_torture_ops rcu_bh_ops = {
#else
static struct rcu_torture_ops rcu_bh_ops = {
.ttype = INVALID_RCU_FLAVOR,
+ .name = "rcu_bh"
};
#endif

--
2.18.1