diff options
| author | Junchang Wang <junchangwang@gmail.com> | 2019-01-03 09:24:51 -0500 |
|---|---|---|
| committer | Paul E. McKenney <paulmck@linux.ibm.com> | 2019-01-25 18:37:14 -0500 |
| commit | 6684880a8b161994e320d8cad70d9ea5dc87f031 (patch) | |
| tree | cb2ff998aba14458d36632773463c6602fc6c102 | |
| parent | 6f7541df3a6cbf530da0ec19d402acc1a3de1b30 (diff) | |
RCU/torture.txt: Remove section MODULE PARAMETERS
The supported module parameters are detailed in both RCU/torture.txt and
admin-guide/kernel-parameters.txt, and the latter is actively maintained.
So this patch removes section MODULE PARAMETERS in torture.txt and
adds a reference to the information in kernel-parameters.txt.
Signed-off-by: Junchang Wang <junchangwang@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
[ paulmck: Add search string. ]
| -rw-r--r-- | Documentation/RCU/torture.txt | 169 |
1 files changed, 2 insertions, 167 deletions
diff --git a/Documentation/RCU/torture.txt b/Documentation/RCU/torture.txt index 55918b54808b..a41a0384d20c 100644 --- a/Documentation/RCU/torture.txt +++ b/Documentation/RCU/torture.txt | |||
| @@ -10,173 +10,8 @@ status messages via printk(), which can be examined via the dmesg | |||
| 10 | command (perhaps grepping for "torture"). The test is started | 10 | command (perhaps grepping for "torture"). The test is started |
| 11 | when the module is loaded, and stops when the module is unloaded. | 11 | when the module is loaded, and stops when the module is unloaded. |
| 12 | 12 | ||
| 13 | 13 | Module parameters are prefixed by "rcutorture." in | |
| 14 | MODULE PARAMETERS | 14 | Documentation/admin-guide/kernel-parameters.txt. |
| 15 | |||
| 16 | This module has the following parameters: | ||
| 17 | |||
| 18 | fqs_duration Duration (in microseconds) of artificially induced bursts | ||
| 19 | of force_quiescent_state() invocations. In RCU | ||
| 20 | implementations having force_quiescent_state(), these | ||
| 21 | bursts help force races between forcing a given grace | ||
| 22 | period and that grace period ending on its own. | ||
| 23 | |||
| 24 | fqs_holdoff Holdoff time (in microseconds) between consecutive calls | ||
| 25 | to force_quiescent_state() within a burst. | ||
| 26 | |||
| 27 | fqs_stutter Wait time (in seconds) between consecutive bursts | ||
| 28 | of calls to force_quiescent_state(). | ||
| 29 | |||
| 30 | gp_normal Make the fake writers use normal synchronous grace-period | ||
| 31 | primitives. | ||
| 32 | |||
| 33 | gp_exp Make the fake writers use expedited synchronous grace-period | ||
| 34 | primitives. If both gp_normal and gp_exp are set, or | ||
| 35 | if neither gp_normal nor gp_exp are set, then randomly | ||
| 36 | choose the primitive so that about 50% are normal and | ||
| 37 | 50% expedited. By default, neither are set, which | ||
| 38 | gives best overall test coverage. | ||
| 39 | |||
| 40 | irqreader Says to invoke RCU readers from irq level. This is currently | ||
| 41 | done via timers. Defaults to "1" for variants of RCU that | ||
| 42 | permit this. (Or, more accurately, variants of RCU that do | ||
| 43 | -not- permit this know to ignore this variable.) | ||
| 44 | |||
| 45 | n_barrier_cbs If this is nonzero, RCU barrier testing will be conducted, | ||
| 46 | in which case n_barrier_cbs specifies the number of | ||
| 47 | RCU callbacks (and corresponding kthreads) to use for | ||
| 48 | this testing. The value cannot be negative. If you | ||
| 49 | specify this to be non-zero when torture_type indicates a | ||
| 50 | synchronous RCU implementation (one for which a member of | ||
| 51 | the synchronize_rcu() rather than the call_rcu() family is | ||
| 52 | used -- see the documentation for torture_type below), an | ||
| 53 | error will be reported and no testing will be carried out. | ||
| 54 | |||
| 55 | nfakewriters This is the number of RCU fake writer threads to run. Fake | ||
| 56 | writer threads repeatedly use the synchronous "wait for | ||
| 57 | current readers" function of the interface selected by | ||
| 58 | torture_type, with a delay between calls to allow for various | ||
| 59 | different numbers of writers running in parallel. | ||
| 60 | nfakewriters defaults to 4, which provides enough parallelism | ||
| 61 | to trigger special cases caused by multiple writers, such as | ||
| 62 | the synchronize_srcu() early return optimization. | ||
| 63 | |||
| 64 | nreaders This is the number of RCU reading threads supported. | ||
| 65 | The default is twice the number of CPUs. Why twice? | ||
| 66 | To properly exercise RCU implementations with preemptible | ||
| 67 | read-side critical sections. | ||
| 68 | |||
| 69 | onoff_interval | ||
| 70 | The number of seconds between each attempt to execute a | ||
| 71 | randomly selected CPU-hotplug operation. Defaults to | ||
| 72 | zero, which disables CPU hotplugging. In HOTPLUG_CPU=n | ||
| 73 | kernels, rcutorture will silently refuse to do any | ||
| 74 | CPU-hotplug operations regardless of what value is | ||
| 75 | specified for onoff_interval. | ||
| 76 | |||
| 77 | onoff_holdoff The number of seconds to wait until starting CPU-hotplug | ||
| 78 | operations. This would normally only be used when | ||
| 79 | rcutorture was built into the kernel and started | ||
| 80 | automatically at boot time, in which case it is useful | ||
| 81 | in order to avoid confusing boot-time code with CPUs | ||
| 82 | coming and going. | ||
| 83 | |||
| 84 | shuffle_interval | ||
| 85 | The number of seconds to keep the test threads affinitied | ||
| 86 | to a particular subset of the CPUs, defaults to 3 seconds. | ||
| 87 | Used in conjunction with test_no_idle_hz. | ||
| 88 | |||
| 89 | shutdown_secs The number of seconds to run the test before terminating | ||
| 90 | the test and powering off the system. The default is | ||
| 91 | zero, which disables test termination and system shutdown. | ||
| 92 | This capability is useful for automated testing. | ||
| 93 | |||
| 94 | stall_cpu The number of seconds that a CPU should be stalled while | ||
| 95 | within both an rcu_read_lock() and a preempt_disable(). | ||
| 96 | This stall happens only once per rcutorture run. | ||
| 97 | If you need multiple stalls, use modprobe and rmmod to | ||
| 98 | repeatedly run rcutorture. The default for stall_cpu | ||
| 99 | is zero, which prevents rcutorture from stalling a CPU. | ||
| 100 | |||
| 101 | Note that attempts to rmmod rcutorture while the stall | ||
| 102 | is ongoing will hang, so be careful what value you | ||
| 103 | choose for this module parameter! In addition, too-large | ||
| 104 | values for stall_cpu might well induce failures and | ||
| 105 | warnings in other parts of the kernel. You have been | ||
| 106 | warned! | ||
| 107 | |||
| 108 | stall_cpu_holdoff | ||
| 109 | The number of seconds to wait after rcutorture starts | ||
| 110 | before stalling a CPU. Defaults to 10 seconds. | ||
| 111 | |||
| 112 | stat_interval The number of seconds between output of torture | ||
| 113 | statistics (via printk()). Regardless of the interval, | ||
| 114 | statistics are printed when the module is unloaded. | ||
| 115 | Setting the interval to zero causes the statistics to | ||
| 116 | be printed -only- when the module is unloaded, and this | ||
| 117 | is the default. | ||
| 118 | |||
| 119 | stutter The length of time to run the test before pausing for this | ||
| 120 | same period of time. Defaults to "stutter=5", so as | ||
| 121 | to run and pause for (roughly) five-second intervals. | ||
| 122 | Specifying "stutter=0" causes the test to run continuously | ||
| 123 | without pausing, which is the old default behavior. | ||
| 124 | |||
| 125 | test_boost Whether or not to test the ability of RCU to do priority | ||
| 126 | boosting. Defaults to "test_boost=1", which performs | ||
| 127 | RCU priority-inversion testing only if the selected | ||
| 128 | RCU implementation supports priority boosting. Specifying | ||
| 129 | "test_boost=0" never performs RCU priority-inversion | ||
| 130 | testing. Specifying "test_boost=2" performs RCU | ||
| 131 | priority-inversion testing even if the selected RCU | ||
| 132 | implementation does not support RCU priority boosting, | ||
| 133 | which can be used to test rcutorture's ability to | ||
| 134 | carry out RCU priority-inversion testing. | ||
| 135 | |||
| 136 | test_boost_interval | ||
| 137 | The number of seconds in an RCU priority-inversion test | ||
| 138 | cycle. Defaults to "test_boost_interval=7". It is | ||
| 139 | usually wise for this value to be relatively prime to | ||
| 140 | the value selected for "stutter". | ||
| 141 | |||
| 142 | test_boost_duration | ||
| 143 | The number of seconds to do RCU priority-inversion testing | ||
| 144 | within any given "test_boost_interval". Defaults to | ||
| 145 | "test_boost_duration=4". | ||
| 146 | |||
| 147 | test_no_idle_hz Whether or not to test the ability of RCU to operate in | ||
| 148 | a kernel that disables the scheduling-clock interrupt to | ||
| 149 | idle CPUs. Boolean parameter, "1" to test, "0" otherwise. | ||
| 150 | Defaults to omitting this test. | ||
| 151 | |||
| 152 | torture_type The type of RCU to test, with string values as follows: | ||
| 153 | |||
| 154 | "rcu": rcu_read_lock(), rcu_read_unlock() and call_rcu(), | ||
| 155 | along with expedited, synchronous, and polling | ||
| 156 | variants. | ||
| 157 | |||
| 158 | "rcu_bh": rcu_read_lock_bh(), rcu_read_unlock_bh(), and | ||
| 159 | call_rcu_bh(), along with expedited and synchronous | ||
| 160 | variants. | ||
| 161 | |||
| 162 | "rcu_busted": This tests an intentionally incorrect version | ||
| 163 | of RCU in order to help test rcutorture itself. | ||
| 164 | |||
| 165 | "srcu": srcu_read_lock(), srcu_read_unlock() and | ||
| 166 | call_srcu(), along with expedited and | ||
| 167 | synchronous variants. | ||
| 168 | |||
| 169 | "sched": preempt_disable(), preempt_enable(), and | ||
| 170 | call_rcu_sched(), along with expedited, | ||
| 171 | synchronous, and polling variants. | ||
| 172 | |||
| 173 | "tasks": voluntary context switch and call_rcu_tasks(), | ||
| 174 | along with expedited and synchronous variants. | ||
| 175 | |||
| 176 | Defaults to "rcu". | ||
| 177 | |||
| 178 | verbose Enable debug printk()s. Default is disabled. | ||
| 179 | |||
| 180 | 15 | ||
| 181 | OUTPUT | 16 | OUTPUT |
| 182 | 17 | ||
