Commit 3765d01b authored by Ingo Molnar's avatar Ingo Molnar
Browse files

Merge branch 'for-mingo-lkmm' of...

Merge branch 'for-mingo-lkmm' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu

 into locking/core

Pull LKMM updates from Paul E. McKenney.

Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parents c11878fd 3d5c7032
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -33,10 +33,11 @@ Acquire: With respect to a lock, acquiring that lock, for example,
	acquire loads.

	When an acquire load returns the value stored by a release store
	to that same variable, then all operations preceding that store
	happen before any operations following that load acquire.
	to that same variable, (in other words, the acquire load "reads
	from" the release store), then all operations preceding that
	store "happen before" any operations following that load acquire.

	See also "Relaxed" and "Release".
	See also "Happens-Before", "Reads-From", "Relaxed", and "Release".

Coherence (co):  When one CPU's store to a given variable overwrites
	either the value from another CPU's store or some later value,
@@ -119,6 +120,11 @@ Fully Ordered: An operation such as smp_mb() that orders all of
	that orders all of its CPU's prior accesses, itself, and
	all of its CPU's subsequent accesses.

Happens-Before (hb): A relation between two accesses in which LKMM
	guarantees the first access precedes the second.  For more
	detail, please see the "THE HAPPENS-BEFORE RELATION: hb"
	section of explanation.txt.

Marked Access:  An access to a variable that uses an special function or
	macro such as "r1 = READ_ONCE(x)" or "smp_store_release(&a, 1)".

+1 −1
Original line number Diff line number Diff line
@@ -51,7 +51,7 @@ klitmus7 Compatibility Table
	============  ==========
	target Linux  herdtools7
	------------  ----------
	     -- 4.18  7.48 --
	     -- 4.14  7.48 --
	4.15 -- 4.19  7.49 --
	4.20 -- 5.5   7.54 --
	5.6  --       7.56 --
+1 −3
Original line number Diff line number Diff line
@@ -7,9 +7,7 @@ C CoRR+poonceonce+Once
 * reads from the same variable are ordered.
 *)

{
	int x;
}
{}

P0(int *x)
{
+1 −3
Original line number Diff line number Diff line
@@ -7,9 +7,7 @@ C CoRW+poonceonce+Once
 * a given variable and a later write to that same variable are ordered.
 *)

{
	int x;
}
{}

P0(int *x)
{
+1 −3
Original line number Diff line number Diff line
@@ -7,9 +7,7 @@ C CoWR+poonceonce+Once
 * given variable and a later read from that same variable are ordered.
 *)

{
	int x;
}
{}

P0(int *x)
{
Loading