Re: [RFC 3/3] tools/memory-model: Add litmus test for RMW + smp_mb__after_atomic()
From: Andrea Parri
Date: Fri Feb 14 2020 - 03:18:34 EST
> > @@ -0,0 +1,29 @@
> > +C Atomic-RMW+mb__after_atomic-is-strong-acquire
> > +
> > +(*
> > + * Result: Never
> > + *
> > + * Test of an atomic RMW followed by a smp_mb__after_atomic() is
> > + * "strong-acquire": both the read and write part of the RMW is ordered before
> > + * the subsequential memory accesses.
> > + *)
> > +
> > +{
> > +}
> > +
> > +P0(int *x, atomic_t *y)
> > +{
> > + r0 = READ_ONCE(*x);
> > + smp_rmb();
> > + r1 = atomic_read(y);
IIRC, klitmus7 needs a declaration for these local variables, say
(trying to keep herd7 happy):
P0(int *x, atomic_t *y)
{
int r0;
int r1;
r0 = READ_ONCE(*x);
smp_rmb();
r1 = atomic_read(y);
}
Thanks,
Andrea