1
0
Fork 0

Documentation/memory-barriers.txt: Conditional must use prior load

A control dependency consists of a load, a conditional that depends on
that load, and a store.  This commit emphasizes this point in the
summary.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
hifive-unleashed-5.1
Paul E. McKenney 2014-02-11 12:28:06 -08:00
parent 449f7413c8
commit 586dd56a4c
1 changed files with 2 additions and 1 deletions

View File

@ -724,7 +724,8 @@ In summary:
later loads, smp_mb().
(*) Control dependencies require at least one run-time conditional
between the prior load and the subsequent store. If the compiler
between the prior load and the subsequent store, and this
conditional must involve the prior load. If the compiler
is able to optimize the conditional away, it will have also
optimized away the ordering. Careful use of ACCESS_ONCE() can
help to preserve the needed conditional.