Messages in this thread | | | Subject | Re: [PATCH v2 1/4] Documentation: LKMM: Move MP+onceassign+derefonce to new litmus-tests/rcu/ | From | Akira Yokosawa <> | Date | Sat, 9 May 2020 12:43:30 +0900 |
| |
Hi Joel,
Sorry for the late response but I've noticed some glitches.
On Sun, 22 Mar 2020 21:57:32 -0400, Joel Fernandes (Google) wrote: > Move MP+onceassign+derefonce to the new Documentation/litmus-tests/rcu/ > directory.
MP+onceassign+derefonce.litmus is called out in tools/memory-model/Documentation/recipes.txt as a representative example of RCU related litmus test.
So I think it should be kept under tools/memory-model/litmus-tests.
Further RCU-related litmus tests can be added under Documentation/litmus-tests/.
IIUC, this change is not picked up by tip tree yet. So we have time to respin the series targeting v5.9.
> > More RCU-related litmus tests would be added here. > > Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org> > > --- > Cc: vpillai@digitalocean.com > > Documentation/litmus-tests/README | 9 +++++++++
Please note that later patches to add atomic litmus tests under Documentation/litmus-tests/ by Boqun put README as Documentation/litums-tests/atomic/README.
This patch's location of RCU's README as Documentation/litmus-tests/README looks asymmetric to me.
I'm OK with either merging atomic's README with the top-level one or moving RCU's README to under Documentation/litmus-tests/rcu.
Joel, Boqum, can you sort out the location of README?
Thanks, Akira
> .../litmus-tests/rcu}/MP+onceassign+derefonce.litmus | 0 > tools/memory-model/litmus-tests/README | 3 --- > 3 files changed, 9 insertions(+), 3 deletions(-) > create mode 100644 Documentation/litmus-tests/README > rename {tools/memory-model/litmus-tests => Documentation/litmus-tests/rcu}/MP+onceassign+derefonce.litmus (100%) > > diff --git a/Documentation/litmus-tests/README b/Documentation/litmus-tests/README > new file mode 100644 > index 0000000000000..84208bc197f2e > --- /dev/null > +++ b/Documentation/litmus-tests/README > @@ -0,0 +1,9 @@ > +============ > +LITMUS TESTS > +============ > + > +RCU (/rcu directory) > +-------------------- > +MP+onceassign+derefonce.litmus > + Demonstrates that rcu_assign_pointer() and rcu_dereference() to > + ensure that an RCU reader will not see pre-initialization garbage. > diff --git a/tools/memory-model/litmus-tests/MP+onceassign+derefonce.litmus b/Documentation/litmus-tests/rcu/MP+onceassign+derefonce.litmus > similarity index 100% > rename from tools/memory-model/litmus-tests/MP+onceassign+derefonce.litmus > rename to Documentation/litmus-tests/rcu/MP+onceassign+derefonce.litmus > diff --git a/tools/memory-model/litmus-tests/README b/tools/memory-model/litmus-tests/README > index 681f9067fa9ed..79e1b1ed4929a 100644 > --- a/tools/memory-model/litmus-tests/README > +++ b/tools/memory-model/litmus-tests/README > @@ -63,9 +63,6 @@ LB+poonceonces.litmus > As above, but with store-release replaced with WRITE_ONCE() > and load-acquire replaced with READ_ONCE(). > > -MP+onceassign+derefonce.litmus > - As below, but with rcu_assign_pointer() and an rcu_dereference(). > - > MP+polockmbonce+poacquiresilsil.litmus > Protect the access with a lock and an smp_mb__after_spinlock() > in one process, and use an acquire load followed by a pair of >
| |