summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2022-12-12 18:58:41 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2022-12-12 18:58:41 +0300
commit5517a2eaec8f525506867988adc6cfe1c414c90a (patch)
treeb4ac55ce25565f0b341d331f835d855293c3a528 /tools
parent1fab45ab6e823f9d7e5bc9520b2aa6564d6d58a7 (diff)
parentee5a86f451f7cc8a904fcbc4f3dece023d36d6e5 (diff)
downloadlinux-5517a2eaec8f525506867988adc6cfe1c414c90a.tar.xz
Merge tag 'lkmm.2022.12.02a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu
Pull kernel memory model documentation updates from Paul McKenney: - Update the LKMM documentation, both in English and in Korean * tag 'lkmm.2022.12.02a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu: docs/memory-barriers.txt/kokr: Fix confusing name of 'data dependency barrier' docs/memory-barriers.txt/kokr: Add memory barrier dma_mb() docs/memory-barriers.txt/kokr: introduce io_stop_wc() and add implementation for ARM64 docs/memory-barriers.txt: Add a missed closing parenthesis tools/memory-model: Weaken ctrl dependency definition in explanation.txt
Diffstat (limited to 'tools')
-rw-r--r--tools/memory-model/Documentation/explanation.txt7
1 files changed, 4 insertions, 3 deletions
diff --git a/tools/memory-model/Documentation/explanation.txt b/tools/memory-model/Documentation/explanation.txt
index ee819a402b69..11a1d2d4f681 100644
--- a/tools/memory-model/Documentation/explanation.txt
+++ b/tools/memory-model/Documentation/explanation.txt
@@ -464,9 +464,10 @@ to address dependencies, since the address of a location accessed
through a pointer will depend on the value read earlier from that
pointer.
-Finally, a read event and another memory access event are linked by a
-control dependency if the value obtained by the read affects whether
-the second event is executed at all. Simple example:
+Finally, a read event X and a write event Y are linked by a control
+dependency if Y syntactically lies within an arm of an if statement and
+X affects the evaluation of the if condition via a data or address
+dependency (or similarly for a switch statement). Simple example:
int x, y;