diff options
author | Josh Triplett <josht@us.ibm.com> | 2006-10-04 05:17:13 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-04 10:55:31 -0400 |
commit | b772e1dd4b1e60a7a160f7bd4ea08e28394ceb54 (patch) | |
tree | b462e17329ba1730178d35cccd1ce5cb928cc101 /Documentation/RCU/torture.txt | |
parent | 75cfef32f26d03f5d0a0833572d52f94ad858a36 (diff) |
[PATCH] RCU: add fake writers to rcutorture
rcutorture currently has one writer and an arbitrary number of readers. To
better exercise some of the code paths in RCU implementations, add fake
writer threads which call the synchronize function for the RCU variant in a
loop, with a delay between calls to arrange for different numbers of
writers running in parallel.
[bunk@stusta.de: cleanup]
Acked-by: Paul McKenney <paulmck@us.ibm.com>
Cc: Dipkanar Sarma <dipankar@in.ibm.com>
Signed-off-by: Josh Triplett <josh@freedesktop.org>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'Documentation/RCU/torture.txt')
-rw-r--r-- | Documentation/RCU/torture.txt | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Documentation/RCU/torture.txt b/Documentation/RCU/torture.txt index 2174badd31e0..2180ef93accc 100644 --- a/Documentation/RCU/torture.txt +++ b/Documentation/RCU/torture.txt | |||
@@ -28,6 +28,15 @@ nreaders This is the number of RCU reading threads supported. | |||
28 | To properly exercise RCU implementations with preemptible | 28 | To properly exercise RCU implementations with preemptible |
29 | read-side critical sections. | 29 | read-side critical sections. |
30 | 30 | ||
31 | nfakewriters This is the number of RCU fake writer threads to run. Fake | ||
32 | writer threads repeatedly use the synchronous "wait for | ||
33 | current readers" function of the interface selected by | ||
34 | torture_type, with a delay between calls to allow for various | ||
35 | different numbers of writers running in parallel. | ||
36 | nfakewriters defaults to 4, which provides enough parallelism | ||
37 | to trigger special cases caused by multiple writers, such as | ||
38 | the synchronize_srcu() early return optimization. | ||
39 | |||
31 | stat_interval The number of seconds between output of torture | 40 | stat_interval The number of seconds between output of torture |
32 | statistics (via printk()). Regardless of the interval, | 41 | statistics (via printk()). Regardless of the interval, |
33 | statistics are printed when the module is unloaded. | 42 | statistics are printed when the module is unloaded. |