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