diff options
Diffstat (limited to 'Documentation/RCU/torture.txt')
-rw-r--r-- | Documentation/RCU/torture.txt | 33 |
1 files changed, 30 insertions, 3 deletions
diff --git a/Documentation/RCU/torture.txt b/Documentation/RCU/torture.txt index d67068d0d2b9..375d3fb71437 100644 --- a/Documentation/RCU/torture.txt +++ b/Documentation/RCU/torture.txt | |||
@@ -69,6 +69,13 @@ onoff_interval | |||
69 | CPU-hotplug operations regardless of what value is | 69 | CPU-hotplug operations regardless of what value is |
70 | specified for onoff_interval. | 70 | specified for onoff_interval. |
71 | 71 | ||
72 | onoff_holdoff The number of seconds to wait until starting CPU-hotplug | ||
73 | operations. This would normally only be used when | ||
74 | rcutorture was built into the kernel and started | ||
75 | automatically at boot time, in which case it is useful | ||
76 | in order to avoid confusing boot-time code with CPUs | ||
77 | coming and going. | ||
78 | |||
72 | shuffle_interval | 79 | shuffle_interval |
73 | The number of seconds to keep the test threads affinitied | 80 | The number of seconds to keep the test threads affinitied |
74 | to a particular subset of the CPUs, defaults to 3 seconds. | 81 | to a particular subset of the CPUs, defaults to 3 seconds. |
@@ -79,6 +86,24 @@ shutdown_secs The number of seconds to run the test before terminating | |||
79 | zero, which disables test termination and system shutdown. | 86 | zero, which disables test termination and system shutdown. |
80 | This capability is useful for automated testing. | 87 | This capability is useful for automated testing. |
81 | 88 | ||
89 | stall_cpu The number of seconds that a CPU should be stalled while | ||
90 | within both an rcu_read_lock() and a preempt_disable(). | ||
91 | This stall happens only once per rcutorture run. | ||
92 | If you need multiple stalls, use modprobe and rmmod to | ||
93 | repeatedly run rcutorture. The default for stall_cpu | ||
94 | is zero, which prevents rcutorture from stalling a CPU. | ||
95 | |||
96 | Note that attempts to rmmod rcutorture while the stall | ||
97 | is ongoing will hang, so be careful what value you | ||
98 | choose for this module parameter! In addition, too-large | ||
99 | values for stall_cpu might well induce failures and | ||
100 | warnings in other parts of the kernel. You have been | ||
101 | warned! | ||
102 | |||
103 | stall_cpu_holdoff | ||
104 | The number of seconds to wait after rcutorture starts | ||
105 | before stalling a CPU. Defaults to 10 seconds. | ||
106 | |||
82 | stat_interval The number of seconds between output of torture | 107 | stat_interval The number of seconds between output of torture |
83 | statistics (via printk()). Regardless of the interval, | 108 | statistics (via printk()). Regardless of the interval, |
84 | statistics are printed when the module is unloaded. | 109 | statistics are printed when the module is unloaded. |
@@ -271,11 +296,13 @@ The following script may be used to torture RCU: | |||
271 | #!/bin/sh | 296 | #!/bin/sh |
272 | 297 | ||
273 | modprobe rcutorture | 298 | modprobe rcutorture |
274 | sleep 100 | 299 | sleep 3600 |
275 | rmmod rcutorture | 300 | rmmod rcutorture |
276 | dmesg | grep torture: | 301 | dmesg | grep torture: |
277 | 302 | ||
278 | The output can be manually inspected for the error flag of "!!!". | 303 | The output can be manually inspected for the error flag of "!!!". |
279 | One could of course create a more elaborate script that automatically | 304 | One could of course create a more elaborate script that automatically |
280 | checked for such errors. The "rmmod" command forces a "SUCCESS" or | 305 | checked for such errors. The "rmmod" command forces a "SUCCESS", |
281 | "FAILURE" indication to be printk()ed. | 306 | "FAILURE", or "RCU_HOTPLUG" indication to be printk()ed. The first |
307 | two are self-explanatory, while the last indicates that while there | ||
308 | were no RCU failures, CPU-hotplug problems were detected. | ||