On Mon, May 11, 2020 at 10:33:48AM -0700, Paul E. McKenney wrote: > On Sun, May 10, 2020 at 04:21:02PM +0900, Akira Yokosawa wrote: > > On Sat, 9 May 2020 12:43:30 +0900, Akira Yokosawa wrote: > > > 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@xxxxxxxxxxxxxxxxx> > > >> > > >> --- > > >> Cc: vpillai@xxxxxxxxxxxxxxxx > > >> > > >> 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? > > > > So something like this? > > > > Patch 1/3 is an independent typo fix in recipes.txt. > > Patch 2/3 reverts the MP+onceassign+derefonce relocation. > > Patch 3/3 merges atomic's README into the top-level one. > > > > This is relative to -rcu's lkmm branch. > > > > Thoughts? > > Looks plausible to me, and thank you for reviewing this. > > Joel, thoughts? Sorry for the delays (OSPM conference in progress). I'm Ok with moving it back to tools/memory-model/. I think on top of this patch, I'd like to add a reference to the to the litmus test in tools/memory-model/ from Documentation/rcu/. Just to mention my rationale for Documentation/litmus-tests/rcu/, I was basically looking for a central place for RCU related litmus tests in the kernel sources and the idea of this new directory came up. For Akira's series, Acked-by: Joel Fernandes (Google) <joel@xxxxxxxxxxxxxxxxx> And could we add the following patch on top of Akira's series so we still maintain a reference to the moved RCU test? ---8<----------------------- >From 52fdb57551cc769d8bd690f4f2b22de36ddece99 Mon Sep 17 00:00:00 2001 From: "Joel Fernandes (Google)" <joel@xxxxxxxxxxxxxxxxx> Date: Mon, 11 May 2020 22:06:46 -0400 Subject: [PATCH] docs: litmus-tests: Clarify about the RCU pre-initialization test Since this test was moved to tools/memory-model/, make sure that it is at least referenced from Documentation/litmus-tests/'s README. Signed-off-by: Joel Fernandes (Google) <joel@xxxxxxxxxxxxxxxxx> --- Documentation/litmus-tests/README | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Documentation/litmus-tests/README b/Documentation/litmus-tests/README index ac0b270b456c1..53f09e74734a4 100644 --- a/Documentation/litmus-tests/README +++ b/Documentation/litmus-tests/README @@ -11,7 +11,6 @@ tools/memory-model/README. atomic (/atomic derectory) -------------------------- - Atomic-RMW+mb__after_atomic-is-stronger-than-acquire.litmus Test that an atomic RMW followed by a smp_mb__after_atomic() is stronger than a normal acquire: both the read and write parts of @@ -23,8 +22,11 @@ Atomic-RMW-ops-are-atomic-WRT-atomic_set.litmus RCU (/rcu directory) -------------------- - RCU+sync+read.litmus RCU+sync+free.litmus Both the above litmus tests demonstrate the RCU grace period guarantee that an RCU read-side critical section can never span a grace period. + +MP+onceassign+derefonce.litmus (moved to tools/memory-model/litmus-tests/) + Demonstrates that rcu_assign_pointer() and rcu_dereference() to + ensure that an RCU reader will not see pre-initialization garbage. -- 2.26.2.645.ge9eca65c58-goog