All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Andrea Parri <parri.andrea@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
	Alan Stern <stern@rowland.harvard.edu>,
	Akira Yokosawa <akiyks@gmail.com>,
	Kernel development list <linux-kernel@vger.kernel.org>,
	mingo@kernel.org, Will Deacon <will.deacon@arm.com>,
	boqun.feng@gmail.com, npiggin@gmail.com, dhowells@redhat.com,
	Jade Alglave <j.alglave@ucl.ac.uk>,
	Luc Maranget <luc.maranget@inria.fr>,
	Patrick Bellasi <patrick.bellasi@arm.com>
Subject: Re: [PATCH] tools/memory-model: remove rb-dep, smp_read_barrier_depends, and lockless_dereference
Date: Tue, 20 Feb 2018 08:11:10 -0800	[thread overview]
Message-ID: <20180220161110.GK3617@linux.vnet.ibm.com> (raw)
In-Reply-To: <20180220151752.GA1900@andrea>

On Tue, Feb 20, 2018 at 04:17:52PM +0100, Andrea Parri wrote:
> On Tue, Feb 20, 2018 at 06:48:13AM -0800, Paul E. McKenney wrote:
> > On Mon, Feb 19, 2018 at 06:44:13PM +0100, Peter Zijlstra wrote:
> > > On Mon, Feb 19, 2018 at 12:14:45PM -0500, Alan Stern wrote:
> > > > Note that operations like atomic_add_unless() already include memory 
> > > > barriers.
> > > 
> > > It is valid for atomic_add_unless() to not imply any barriers when the
> > > addition doesn't happen.
> > 
> > Agreed, given that atomic_add_unless() just returns 0 or 1, not the
> > pointer being added.  Of course, the __atomic_add_unless() function
> > that it calls is another story, as it does return the old value.  Sigh.
> > And __atomic_add_unless() is called directly from some code.  All of
> > which looks to be counters rather than pointers, thankfully.
> > 
> > So, do we want to rely on atomic_add_unless() always being
> > invoked on counters rather than pointers, or does it need an
> > smp_read_barrier_depends()?
> 
> alpha's implementation of __atomic_add_unless() has an unconditional smp_mb()
> before returning so, as far as dependencies are concerned, these seem fine.

Very good!

							Thanx, Paul

  reply	other threads:[~2018-02-20 16:10 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-09 14:18 [PATCH RFC tools/lkmm] Miscellaneous fixes Paul E. McKenney
2018-02-09 14:20 ` [PATCH RFC tip/lkmm 01/10] tools/memory-model: Clarify the origin/scope of the tool name Paul E. McKenney
2018-02-09 14:20 ` [PATCH RFC tip/lkmm 02/10] MAINTAINERS: Add the Memory Consistency Model subsystem Paul E. McKenney
2018-02-09 14:20 ` [PATCH RFC tip/lkmm 03/10] MAINTAINERS: List file memory-barriers.txt within the LKMM entry Paul E. McKenney
2018-02-09 14:20 ` [PATCH RFC tip/lkmm 04/10] EXP litmus_tests: Add comments explaining tests' purposes Paul E. McKenney
2018-02-09 18:46   ` Alan Stern
2018-02-10  1:05     ` Paul E. McKenney
2018-02-09 14:20 ` [PATCH RFC tip/lkmm 05/10] README: Fix a couple of punctuation errors Paul E. McKenney
2018-02-09 14:20 ` [PATCH RFC tip/lkmm 06/10] EXP MAINTAINERS: Add the "LKMM" acronym Paul E. McKenney
2018-02-09 14:20 ` [PATCH RFC tip/lkmm 07/10] MAINTAINERS: Add Akira Yokosawa as an LKMM reviewer Paul E. McKenney
2018-02-09 14:20 ` [PATCH RFC tip/lkmm 08/10] EXP Remove understore from smp_mb__before_atomic() workings Paul E. McKenney
2018-02-15 22:30   ` Andrea Parri
2018-02-15 22:49     ` Paul E. McKenney
2018-02-15 23:19       ` Andrea Parri
2018-02-15 23:32         ` Paul E. McKenney
2018-02-09 14:20 ` [PATCH RFC tip/lkmm 09/10] EXP Remove underscore from smp_mb__after_atomic() workings Paul E. McKenney
2018-02-09 14:20 ` [PATCH RFC tip/lkmm 10/10] EXP Remove underscores from smp_mb__after_spinlock() workings Paul E. McKenney
2018-02-09 16:02 ` [PATCH RFC tools/lkmm] Miscellaneous fixes Akira Yokosawa
2018-02-09 16:06   ` [PATCH] tools/memory-model: Restore compat with herd7 7.47 ("-" -> "_") Akira Yokosawa
2018-02-09 23:46   ` [PATCH v2] tools/memory-model: Make " Akira Yokosawa
2018-02-10  1:07     ` Paul E. McKenney
2018-02-10  3:03       ` Akira Yokosawa
2018-02-11 11:51       ` Ingo Molnar
2018-02-13  1:38         ` Paul E. McKenney
2018-02-13  8:32           ` Ingo Molnar
2018-02-14 22:20       ` Akira Yokosawa
2018-02-14 22:52         ` Paul E. McKenney
2018-02-15 15:10           ` Alan Stern
2018-02-15 15:58             ` Trial of conflict resolution of Alan's patch Akira Yokosawa
2018-02-15 17:51               ` Alan Stern
2018-02-15 19:29                 ` Paul E. McKenney
2018-02-15 21:51                   ` Akira Yokosawa
2018-02-16 15:18                     ` Alan Stern
2018-02-16 15:47                       ` Andrea Parri
2018-02-16 16:53                         ` Paul E. McKenney
2018-02-16 22:22                           ` [PATCH] tools/memory-model: remove rb-dep, smp_read_barrier_depends, and lockless_dereference Alan Stern
2018-02-16 23:22                             ` Akira Yokosawa
2018-02-17  0:39                             ` Paul E. McKenney
2018-02-21 15:00                               ` Alan Stern
2018-02-21 16:06                                 ` Paul E. McKenney
2018-02-21 16:51                                   ` Ingo Molnar
2018-02-21 17:53                                     ` Paul E. McKenney
2018-02-21 17:15                                   ` [PATCH] tools/memory-model: update: " Alan Stern
2018-02-21 17:58                                     ` Andrea Parri
2018-02-21 18:14                                       ` Paul E. McKenney
2018-02-21 18:00                                     ` Paul E. McKenney
2018-02-21 22:29                                     ` Akira Yokosawa
2018-02-24  3:22                                       ` Akira Yokosawa
2018-02-24  3:30                                         ` Paul E. McKenney
2018-02-24 14:36                                           ` Andrea Parri
2018-02-24 16:49                                             ` Alan Stern
2018-02-24 18:08                                               ` Paul E. McKenney
2018-02-24 22:47                                                 ` Akira Yokosawa
2018-02-25 22:33                                                   ` Paul E. McKenney
2018-02-17  3:25                             ` [PATCH] tools/memory-model: " Andrea Parri
2018-02-17 15:14                               ` Andrea Parri
2018-02-19 17:14                                 ` Alan Stern
2018-02-19 17:43                                   ` Peter Zijlstra
2018-02-19 17:44                                   ` Peter Zijlstra
2018-02-20 14:48                                     ` Paul E. McKenney
2018-02-20 15:17                                       ` Andrea Parri
2018-02-20 16:11                                         ` Paul E. McKenney [this message]
2018-02-19 19:41                                   ` Paul E. McKenney
2018-02-19 20:28                                     ` Peter Zijlstra
2018-02-20 14:49                                       ` Paul E. McKenney
2018-02-20 15:11                                         ` Alan Stern
2018-02-20 16:10                                           ` Paul E. McKenney
2018-02-20  9:33                                   ` Andrea Parri
2018-02-20  9:51                                     ` Peter Zijlstra
2018-02-20 15:38                                     ` Alan Stern
2018-02-15 22:05                   ` Trial of conflict resolution of Alan's patch Andrea Parri
2018-02-15 22:41                     ` Paul E. McKenney
2018-02-18 15:46           ` [PATCH v2] tools/memory-model: Make compat with herd7 7.47 ("-" -> "_") Akira Yokosawa
2018-02-20 14:57             ` Paul E. McKenney

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180220161110.GK3617@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=akiyks@gmail.com \
    --cc=boqun.feng@gmail.com \
    --cc=dhowells@redhat.com \
    --cc=j.alglave@ucl.ac.uk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luc.maranget@inria.fr \
    --cc=mingo@kernel.org \
    --cc=npiggin@gmail.com \
    --cc=parri.andrea@gmail.com \
    --cc=patrick.bellasi@arm.com \
    --cc=peterz@infradead.org \
    --cc=stern@rowland.harvard.edu \
    --cc=will.deacon@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.