~ubuntu-branches/debian/experimental/linux-tools/experimental

« back to all changes in this revision

Viewing changes to arch/mips/include/asm/barrier.h

  • Committer: Package Import Robot
  • Author(s): Ben Hutchings
  • Date: 2014-02-02 16:57:49 UTC
  • mfrom: (1.1.10) (0.1.21 sid)
  • Revision ID: package-import@ubuntu.com-20140202165749-tw94o9t1t0a8txk6
Tags: 3.13-1~exp2
Merge changes from sid up to 3.12.6-3

Show diffs side-by-side

added added

removed removed

Lines of Context:
18
18
 * over this barrier.  All reads preceding this primitive are guaranteed
19
19
 * to access memory (but not necessarily other CPUs' caches) before any
20
20
 * reads following this primitive that depend on the data return by
21
 
 * any of the preceding reads.  This primitive is much lighter weight than
 
21
 * any of the preceding reads.  This primitive is much lighter weight than
22
22
 * rmb() on most CPUs, and is never heavier weight than is
23
23
 * rmb().
24
24
 *
43
43
 * </programlisting>
44
44
 *
45
45
 * because the read of "*q" depends on the read of "p" and these
46
 
 * two reads are separated by a read_barrier_depends().  However,
 
46
 * two reads are separated by a read_barrier_depends().  However,
47
47
 * the following code, with the same initial values for "a" and "b":
48
48
 *
49
49
 * <programlisting>
57
57
 * </programlisting>
58
58
 *
59
59
 * does not enforce ordering, since there is no data dependency between
60
 
 * the read of "a" and the read of "b".  Therefore, on some CPUs, such
 
60
 * the read of "a" and the read of "b".  Therefore, on some CPUs, such
61
61
 * as Alpha, "y" could be set to 3 and "x" to 0.  Use rmb()
62
62
 * in cases like this where there are no data dependencies.
63
63
 */