mirror of
https://github.com/torvalds/linux.git
synced 2024-11-25 13:41:51 +00:00
doc: Fix RCU requirements typos
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org>
This commit is contained in:
parent
e73c14ebc3
commit
526914a0ae
@ -1480,7 +1480,7 @@ speed-of-light delays if nothing else.
|
|||||||
|
|
||||||
<p>
|
<p>
|
||||||
Furthermore, uncertainty about external state is inherent in many cases.
|
Furthermore, uncertainty about external state is inherent in many cases.
|
||||||
For example, a pair of veternarians might use heartbeat to determine
|
For example, a pair of veterinarians might use heartbeat to determine
|
||||||
whether or not a given cat was alive.
|
whether or not a given cat was alive.
|
||||||
But how long should they wait after the last heartbeat to decide that
|
But how long should they wait after the last heartbeat to decide that
|
||||||
the cat is in fact dead?
|
the cat is in fact dead?
|
||||||
@ -1489,9 +1489,9 @@ mean that a relaxed cat would be considered to cycle between death
|
|||||||
and life more than 100 times per minute.
|
and life more than 100 times per minute.
|
||||||
Moreover, just as with human beings, a cat's heart might stop for
|
Moreover, just as with human beings, a cat's heart might stop for
|
||||||
some period of time, so the exact wait period is a judgment call.
|
some period of time, so the exact wait period is a judgment call.
|
||||||
One of our pair of veternarians might wait 30 seconds before pronouncing
|
One of our pair of veterinarians might wait 30 seconds before pronouncing
|
||||||
the cat dead, while the other might insist on waiting a full minute.
|
the cat dead, while the other might insist on waiting a full minute.
|
||||||
The two veternarians would then disagree on the state of the cat during
|
The two veterinarians would then disagree on the state of the cat during
|
||||||
the final 30 seconds of the minute following the last heartbeat.
|
the final 30 seconds of the minute following the last heartbeat.
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
@ -1945,7 +1945,7 @@ guard against mishaps and misuse:
|
|||||||
<ol>
|
<ol>
|
||||||
<li> It is all too easy to forget to use <tt>rcu_read_lock()</tt>
|
<li> It is all too easy to forget to use <tt>rcu_read_lock()</tt>
|
||||||
everywhere that it is needed, so kernels built with
|
everywhere that it is needed, so kernels built with
|
||||||
<tt>CONFIG_PROVE_RCU=y</tt> will spat if
|
<tt>CONFIG_PROVE_RCU=y</tt> will splat if
|
||||||
<tt>rcu_dereference()</tt> is used outside of an
|
<tt>rcu_dereference()</tt> is used outside of an
|
||||||
RCU read-side critical section.
|
RCU read-side critical section.
|
||||||
Update-side code can use <tt>rcu_dereference_protected()</tt>,
|
Update-side code can use <tt>rcu_dereference_protected()</tt>,
|
||||||
@ -2421,7 +2421,7 @@ However, there are some restrictions on the code placed within
|
|||||||
<li> Blocking is prohibited.
|
<li> Blocking is prohibited.
|
||||||
In practice, this is not a serious restriction given that idle
|
In practice, this is not a serious restriction given that idle
|
||||||
tasks are prohibited from blocking to begin with.
|
tasks are prohibited from blocking to begin with.
|
||||||
<li> Although nesting <tt>RCU_NONIDLE()</tt> is permited, they cannot
|
<li> Although nesting <tt>RCU_NONIDLE()</tt> is permitted, they cannot
|
||||||
nest indefinitely deeply.
|
nest indefinitely deeply.
|
||||||
However, given that they can be nested on the order of a million
|
However, given that they can be nested on the order of a million
|
||||||
deep, even on 32-bit systems, this should not be a serious
|
deep, even on 32-bit systems, this should not be a serious
|
||||||
@ -2885,7 +2885,7 @@ APIs for defining and initializing <tt>srcu_struct</tt> structures.
|
|||||||
<h3><a name="Tasks RCU">Tasks RCU</a></h3>
|
<h3><a name="Tasks RCU">Tasks RCU</a></h3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Some forms of tracing use “tramopolines” to handle the
|
Some forms of tracing use “trampolines” to handle the
|
||||||
binary rewriting required to install different types of probes.
|
binary rewriting required to install different types of probes.
|
||||||
It would be good to be able to free old trampolines, which sounds
|
It would be good to be able to free old trampolines, which sounds
|
||||||
like a job for some form of RCU.
|
like a job for some form of RCU.
|
||||||
|
Loading…
Reference in New Issue
Block a user