On Thu, Mar 12, 2026 at 02:00:33AM +0000, Kunwu Chan wrote:
> March 11, 2026 at 10:39 PM, "Paul E. McKenney" <[email protected] 
> mailto:[email protected]?to=%22Paul%20E.%20McKenney%22%20%3Cpaulmck%40kernel.org%3E
>  > wrote:
> 
> 
> > 
> > On Wed, Mar 11, 2026 at 04:48:13PM +0800, Kunwu Chan wrote:
> > 
> > > 
> > > State explicitly that Figure 15.15 uses x as a schematic variable name, 
> > > while the surrounding W+RWC analysis in Listing 15.18 follows the 
> > > concrete z-flow (P2 -> z -> P1). This eliminates notation drift across 
> > > cross-references and preserves propagation-argument fidelity.
> > >  
> > >  Signed-off-by: Kunwu Chan <[email protected]>
> > > 
> > Again, good eyes, and thank you! I queued and pushed all three, and
> > added a fourth commit that converted this to a footnote and mentioned
> > both variables and the listing, shown below. Please check it to make
> > sure that I have not messed something up.
> > 
> >  Thanx, Paul
> > 
> Hi Paul,
> Checked — LGTM.
> The footnote conversion is the right call. It cleanly resolves 
> the Figure 15.15 x vs. W+RWC z notation mismatch.
> Thanks for landing this promptly.

And thank you for checking!

                                                        Thanx, Paul

> Best, Kunwu
> 
> > > 
> > > ---
> > >  memorder/memorder.tex | 2 ++
> > >  1 file changed, 2 insertions(+)
> > >  
> > >  diff --git a/memorder/memorder.tex b/memorder/memorder.tex
> > >  index 2357e7ea..8eb14a29 100644
> > >  --- a/memorder/memorder.tex
> > >  +++ b/memorder/memorder.tex
> > >  @@ -2760,6 +2760,8 @@ that \co{P1()}'s read from \co{z} happens much 
> > > later in time, but
> > >  nevertheless still sees the old value of zero.
> > >  This situation is depicted in
> > >  \cref{fig:memorder:Load-to-Store is Counter-Temporal}:
> > >  +The figure uses \co{x} as a generic variable name for the same
> > >  +counter-temporal pattern.
> > >  Just because a load sees the old value does \emph{not} mean that
> > >  this load executed at an earlier time than did the store of the
> > >  new value.
> > >  -- 
> > >  2.25.1
> > > 
> > ------------------------------------------------------------------------
> > 
> > commit d2c790e9077625e2e28ee919619b4d18175c3665
> > Author: Paul E. McKenney <[email protected]>
> > Date: Wed Mar 11 07:34:07 2026 -0700
> > 
> >  memorder: Convert Figure 15.15 variable-x commentary to footnote
> >  
> >  Signed-off-by: Paul E. McKenney <[email protected]>
> > 
> > diff --git a/memorder/memorder.tex b/memorder/memorder.tex
> > index 388903b6..4503c0a6 100644
> > --- a/memorder/memorder.tex
> > +++ b/memorder/memorder.tex
> > @@ -2759,9 +2759,10 @@ It therefore takes time for the effect of the 
> > \co{P2()}'s store to
> >  that \co{P1()}'s read from \co{z} happens much later in time, but
> >  nevertheless still sees the old value of zero.
> >  This situation is depicted in
> > -\cref{fig:memorder:Load-to-Store is Counter-Temporal}:
> > -The figure uses \co{x} as a generic variable name for the same
> > -counter-temporal pattern.
> > +\cref{fig:memorder:Load-to-Store is Counter-Temporal}:\footnote{
> > + The figure uses \co{x} as a generic variable name for the same
> > + counter-temporal pattern that uses the variable \co{z} in
> > + \cref{lst:memorder:W+RWC Litmus Test With Release (No Ordering)}.}
> >  Just because a load sees the old value does \emph{not} mean that
> >  this load executed at an earlier time than did the store of the
> >  new value.
> >

Reply via email to