lkml.org 
[lkml]   [2020]   [May]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH 0/3] tools/memory-model, Documentation/litmus-test: Sort out location of litmus test and README
    From
    Date
    On Mon, 11 May 2020 22:13:09 -0400, Joel Fernandes wrote:
    > 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@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?
    >>>
    >>> 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/.

    Sounds reasonable to me. But for most people, it never changes its location.
    Please find inline comments below.

    >
    > 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@joelfernandes.org>

    Thank you!

    >
    > 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@joelfernandes.org>
    > 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@joelfernandes.org>
    > ---
    > 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)
    > --------------------
    > -

    I loosely followed the convention of ReST documents in putting these empty
    lines. But I don't mind if they are removed.

    > 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/)

    As I said above, for those who don't follow developments in the lkmm branch,
    MP+onceassign+derefonce.litmus stays in tools/memory-model/litmus-tests/.
    So,

    +MP+onceassign+derefonce.litmus (under tools/memory-model/litmus-tests/)

    looks better to me.

    Thanks, Akira

    > + Demonstrates that rcu_assign_pointer() and rcu_dereference() to
    > + ensure that an RCU reader will not see pre-initialization garbage.
    >

    \
     
     \ /
      Last update: 2020-05-12 13:51    [W:4.644 / U:0.752 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site