diff options
| author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2007-07-15 23:41:03 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-16 09:05:47 -0700 | 
| commit | ef48bd246124ccdef0e1fa5b03b62d69cbf71fa7 (patch) | |
| tree | 830af437b3d0bc916a4f8f9928dece6b64200a66 | |
| parent | 4d3b573ad9af85b6df104044f6fff05f04349db2 (diff) | |
Document the fact that RCU callbacks can run in parallel
Add an item to the RCU documentation checklist noting that RCU callbacks
can run in parallel.
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
| -rw-r--r-- | Documentation/RCU/checklist.txt | 10 | 
1 files changed, 9 insertions, 1 deletions
| diff --git a/Documentation/RCU/checklist.txt b/Documentation/RCU/checklist.txt index f4dffadbcb00..42b01bc2e1b4 100644 --- a/Documentation/RCU/checklist.txt +++ b/Documentation/RCU/checklist.txt @@ -222,7 +222,15 @@ over a rather long period of time, but improvements are always welcome!  	deadlock as soon as the RCU callback happens to interrupt that  	acquisition's critical section. -13.	SRCU (srcu_read_lock(), srcu_read_unlock(), and synchronize_srcu()) +13.	RCU callbacks can be and are executed in parallel.  In many cases, +	the callback code simply wrappers around kfree(), so that this +	is not an issue (or, more accurately, to the extent that it is +	an issue, the memory-allocator locking handles it).  However, +	if the callbacks do manipulate a shared data structure, they +	must use whatever locking or other synchronization is required +	to safely access and/or modify that data structure. + +14.	SRCU (srcu_read_lock(), srcu_read_unlock(), and synchronize_srcu())  	may only be invoked from process context.  Unlike other forms of  	RCU, it -is- permissible to block in an SRCU read-side critical  	section (demarked by srcu_read_lock() and srcu_read_unlock()), | 
