]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - Documentation/RCU/rcu.txt
omap: get rid of a useless cast
[linux-2.6-omap-h63xx.git] / Documentation / RCU / rcu.txt
index 6fa092251586e14930c6d51d8bde1d4566512138..95821a29ae418b6b275b01869fd40e29900baadf 100644 (file)
@@ -36,6 +36,14 @@ o    How can the updater tell when a grace period has completed
        executed in user mode, or executed in the idle loop, we can
        safely free up that item.
 
        executed in user mode, or executed in the idle loop, we can
        safely free up that item.
 
+       Preemptible variants of RCU (CONFIG_PREEMPT_RCU) get the
+       same effect, but require that the readers manipulate CPU-local
+       counters.  These counters allow limited types of blocking
+       within RCU read-side critical sections.  SRCU also uses
+       CPU-local counters, and permits general blocking within
+       RCU read-side critical sections.  These two variants of
+       RCU detect grace periods by sampling these counters.
+
 o      If I am running on a uniprocessor kernel, which can only do one
        thing at a time, why should I wait for a grace period?
 
 o      If I am running on a uniprocessor kernel, which can only do one
        thing at a time, why should I wait for a grace period?
 
@@ -45,7 +53,11 @@ o    How can I see where RCU is currently used in the Linux kernel?
 
        Search for "rcu_read_lock", "rcu_read_unlock", "call_rcu",
        "rcu_read_lock_bh", "rcu_read_unlock_bh", "call_rcu_bh",
 
        Search for "rcu_read_lock", "rcu_read_unlock", "call_rcu",
        "rcu_read_lock_bh", "rcu_read_unlock_bh", "call_rcu_bh",
-       "synchronize_rcu", and "synchronize_net".
+       "srcu_read_lock", "srcu_read_unlock", "synchronize_rcu",
+       "synchronize_net", "synchronize_srcu", and the other RCU
+       primitives.  Or grab one of the cscope databases from:
+
+       http://www.rdrop.com/users/paulmck/RCU/linuxusage/rculocktab.html
 
 o      What guidelines should I follow when writing code that uses RCU?
 
 
 o      What guidelines should I follow when writing code that uses RCU?
 
@@ -66,7 +78,11 @@ o    I hear that RCU is patented?  What is with that?
 
 o      I hear that RCU needs work in order to support realtime kernels?
 
 
 o      I hear that RCU needs work in order to support realtime kernels?
 
-       Yes, work in progress.
+       This work is largely completed.  Realtime-friendly RCU can be
+       enabled via the CONFIG_PREEMPT_RCU kernel configuration parameter.
+       However, work is in progress for enabling priority boosting of
+       preempted RCU read-side critical sections.This is needed if you
+       have CPU-bound realtime threads.
 
 o      Where can I find more information on RCU?
 
 
 o      Where can I find more information on RCU?
 
@@ -111,6 +127,11 @@ o  What are all these files in this directory?
 
                You are reading it!
 
 
                You are reading it!
 
+       rcuref.txt
+
+               Describes how to combine use of reference counts
+               with RCU.
+
        whatisRCU.txt
 
                Overview of how the RCU implementation works.  Along
        whatisRCU.txt
 
                Overview of how the RCU implementation works.  Along