summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@linux.ibm.com>2018-10-16 14:46:58 +0200
committerPaul E. McKenney <paulmck@linux.ibm.com>2018-12-01 21:45:42 +0100
commit5ac7cdc29897e5fc3f5e214f3f8c8b03ef8d7029 (patch)
tree1e6c017a7408ce8eb59fbb499831b64ec8ddb04d
parentrcutorture: Use 100ms buckets for forward-progress callback histograms (diff)
downloadlinux-5ac7cdc29897e5fc3f5e214f3f8c8b03ef8d7029.tar.xz
linux-5ac7cdc29897e5fc3f5e214f3f8c8b03ef8d7029.zip
rcutorture: Don't do busted forward-progress testing
The "busted" rcutorture type is an intentionally broken implementation of RCU. Doing forward-progress testing on this implementation is not particularly meaningful on the one hand and can result in fatal abuse of the memory allocator on the other. This commit therefore disables forward-progress testing of the "busted" rcutorture type. Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
-rw-r--r--kernel/rcu/rcutorture.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c
index a4c4a24bdcaa..f6e85faa4ff4 100644
--- a/kernel/rcu/rcutorture.c
+++ b/kernel/rcu/rcutorture.c
@@ -1900,7 +1900,8 @@ static int __init rcu_torture_fwd_prog_init(void)
{
if (!fwd_progress)
return 0; /* Not requested, so don't do it. */
- if (!cur_ops->stall_dur || cur_ops->stall_dur() <= 0) {
+ if (!cur_ops->stall_dur || cur_ops->stall_dur() <= 0 ||
+ cur_ops == &rcu_busted_ops) {
VERBOSE_TOROUT_STRING("rcu_torture_fwd_prog_init: Disabled, unsupported by RCU flavor under test");
return 0;
}