xref: /openbmc/linux/kernel/rcu/Kconfig.debug (revision f519f0be)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# RCU-related debugging configuration options
4#
5
6menu "RCU Debugging"
7
8config PROVE_RCU
9	def_bool PROVE_LOCKING
10
11config TORTURE_TEST
12	tristate
13	default n
14
15config RCU_PERF_TEST
16	tristate "performance tests for RCU"
17	depends on DEBUG_KERNEL
18	select TORTURE_TEST
19	select SRCU
20	select TASKS_RCU
21	default n
22	help
23	  This option provides a kernel module that runs performance
24	  tests on the RCU infrastructure.  The kernel module may be built
25	  after the fact on the running kernel to be tested, if desired.
26
27	  Say Y here if you want RCU performance tests to be built into
28	  the kernel.
29	  Say M if you want the RCU performance tests to build as a module.
30	  Say N if you are unsure.
31
32config RCU_TORTURE_TEST
33	tristate "torture tests for RCU"
34	depends on DEBUG_KERNEL
35	select TORTURE_TEST
36	select SRCU
37	select TASKS_RCU
38	default n
39	help
40	  This option provides a kernel module that runs torture tests
41	  on the RCU infrastructure.  The kernel module may be built
42	  after the fact on the running kernel to be tested, if desired.
43
44	  Say Y here if you want RCU torture tests to be built into
45	  the kernel.
46	  Say M if you want the RCU torture tests to build as a module.
47	  Say N if you are unsure.
48
49config RCU_CPU_STALL_TIMEOUT
50	int "RCU CPU stall timeout in seconds"
51	depends on RCU_STALL_COMMON
52	range 3 300
53	default 21
54	help
55	  If a given RCU grace period extends more than the specified
56	  number of seconds, a CPU stall warning is printed.  If the
57	  RCU grace period persists, additional CPU stall warnings are
58	  printed at more widely spaced intervals.
59
60config RCU_TRACE
61	bool "Enable tracing for RCU"
62	depends on DEBUG_KERNEL
63	default y if TREE_RCU
64	select TRACE_CLOCK
65	help
66	  This option enables additional tracepoints for ftrace-style
67	  event tracing.
68
69	  Say Y here if you want to enable RCU tracing
70	  Say N if you are unsure.
71
72config RCU_EQS_DEBUG
73	bool "Provide debugging asserts for adding NO_HZ support to an arch"
74	depends on DEBUG_KERNEL
75	help
76	  This option provides consistency checks in RCU's handling of
77	  NO_HZ.  These checks have proven quite helpful in detecting
78	  bugs in arch-specific NO_HZ code.
79
80	  Say N here if you need ultimate kernel/user switch latencies
81	  Say Y if you are unsure
82
83endmenu # "RCU Debugging"
84