linux-uconsole/kernel/rcu
Paul E. McKenney 506b28fb99 rcuperf: Fix cleanup path for invalid perf_type strings
[ Upstream commit ad092c0277 ]

If the specified rcuperf.perf_type is not in the rcu_perf_init()
function's perf_ops[] array, rcuperf prints some console messages and
then invokes rcu_perf_cleanup() to set state so that a future torture
test can run.  However, rcu_perf_cleanup() also attempts to end the
test that didn't actually start, and in doing so relies on the value
of cur_ops, a value that is not particularly relevant in this case.
This can result in confusing output or even follow-on failures due to
attempts to use facilities that have not been properly initialized.

This commit therefore sets the value of cur_ops to NULL in this case and
inserts a check near the beginning of rcu_perf_cleanup(), thus avoiding
relying on an irrelevant cur_ops value.

Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-05-31 06:46:30 -07:00
..
Kconfig
Kconfig.debug
Makefile
rcu.h
rcu_segcblist.c
rcu_segcblist.h
rcuperf.c rcuperf: Fix cleanup path for invalid perf_type strings 2019-05-31 06:46:30 -07:00
rcutorture.c rcutorture: Fix cleanup path for invalid torture_type strings 2019-05-31 06:46:30 -07:00
srcutiny.c
srcutree.c
sync.c
tiny.c
tree.c
tree.h
tree_exp.h
tree_plugin.h
update.c kprobes: Prohibit probing on RCU debug routine 2019-04-05 22:33:08 +02:00