Re: [PATCH v2] tools/memory-model: Document herd7 (abstract) representation

From: Andrea Parri
Date: Wed Jun 05 2024 - 15:48:32 EST


On Wed, Jun 05, 2024 at 01:55:08PM -0400, Alan Stern wrote:
> On Wed, Jun 05, 2024 at 06:52:18PM +0200, Andrea Parri wrote:
> > > I wonder if we really need a special notation for lk-rmw. Is anything
> > > wrong with using the normal rmw notation for these links?
> >
> > I don't think we need the special notation: in fact, herd7 doesn't know
> > anything about these lk-rmw or rmw links between lock events until after
> > tools/memory-model/ (the .cat file) has established such links cf.
> >
> > (* Link Lock-Reads to their RMW-partner Lock-Writes *)
> > let lk-rmw = ([LKR] ; po-loc ; [LKW]) \ (po ; po)
> > let rmw = rmw | lk-rmw
> >
> > I was trying to be informative (since that says "lk-rmw is a subrelation
> > of rmw) but, in order to be faithful to the scope of this document (herd
> > representation), the doc should really just indicate LKR ->po LKW.
> >
> > Thoughts?
>
> I agree; be faithful to the document's scope and just say LKR ->po LKW.
>
> Were there other things like this in the table? I didn't notice any.

None that I can think of, the others look good to me.

I'll do this change for v3. Thank you for the suggestion.

Andrea