Re: [PATCH 2/3] LKMM: Add litmus test for RCU GP guarantee where reader stores

From: Alan Stern
Date: Fri Mar 20 2020 - 16:57:02 EST


On Fri, 20 Mar 2020, Joel Fernandes wrote:

> On Fri, Mar 20, 2020 at 11:03:30AM -0400, Alan Stern wrote:
> > On Fri, 20 Mar 2020, Joel Fernandes (Google) wrote:
> >
> > > This adds an example for the important RCU grace period guarantee, which
> > > shows an RCU reader can never span a grace period.
> > >
> > > Signed-off-by: Joel Fernandes (Google) <joel@xxxxxxxxxxxxxxxxx>
> > > ---
> > > .../litmus-tests/RCU+sync+read.litmus | 37 +++++++++++++++++++
> > > 1 file changed, 37 insertions(+)
> > > create mode 100644 tools/memory-model/litmus-tests/RCU+sync+read.litmus
> > >
> > > diff --git a/tools/memory-model/litmus-tests/RCU+sync+read.litmus b/tools/memory-model/litmus-tests/RCU+sync+read.litmus
> > > new file mode 100644
> > > index 0000000000000..73557772e2a32
> > > --- /dev/null
> > > +++ b/tools/memory-model/litmus-tests/RCU+sync+read.litmus
> >
> > Do these new tests really belong here? I thought we were adding a new
> > directory under Documentation/ for litmus tests that illustrate parts
> > of the LKMM or memory-barriers.txt.
> >
> > By contrast, the tests under tools/memory-model are merely to show
> > people what litmus tests look like and how they should be written.
>
> I could add it to tools/memory-model/Documentation/ under a new
> 'examples' directory there. We could also create an 'rcu' directory in
> tools/memory-model/litmus-tests/ and add these there. Thoughts?

What happened was that about a month ago, Boqun Feng added
Documentation/atomic-tests for litmus tests related to handling of
atomic_t types (see
<https://marc.info/?l=linux-kernel&m=158276408609029&w=2>.) Should we
interpose an extra directory level, making it
Documentation/litmus-tests/atomic? Or
Documentation/LKMM-litmus-tests/atomic?

Then the new tests added here could go into
Documentation/litmus-tests/rcu, or whatever.

Alan