Merge tag 'sound-fix-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai...
[linux-2.6-microblaze.git] / tools / memory-model / litmus-tests / S+fencewmbonceonce+poacquireonce.litmus
1 C S+fencewmbonceonce+poacquireonce
2
3 (*
4  * Result: Never
5  *
6  * Can a smp_wmb(), instead of a release, and an acquire order a prior
7  * store against a subsequent store?
8  *)
9
10 {
11         int x;
12         int y;
13 }
14
15 P0(int *x, int *y)
16 {
17         WRITE_ONCE(*x, 2);
18         smp_wmb();
19         WRITE_ONCE(*y, 1);
20 }
21
22 P1(int *x, int *y)
23 {
24         int r0;
25
26         r0 = smp_load_acquire(y);
27         WRITE_ONCE(*x, 1);
28 }
29
30 exists (x=2 /\ 1:r0=1)