All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Alan Stern <stern@rowland.harvard.edu>,
	Andrea Parri <parri.andrea@gmail.com>,
	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 06:49:39 -0800	[thread overview]
Message-ID: <20180220144939.GG3617@linux.vnet.ibm.com> (raw)
In-Reply-To: <20180219202844.GW25201@hirez.programming.kicks-ass.net>

On Mon, Feb 19, 2018 at 09:28:44PM +0100, Peter Zijlstra wrote:
> On Mon, Feb 19, 2018 at 11:41:23AM -0800, Paul E. McKenney wrote:
> > On Mon, Feb 19, 2018 at 12:14:45PM -0500, Alan Stern wrote:
> > > This leaves us with a question: Do we want to change the kernel by
> > > adding memory barriers after unsuccessful RMW operations on Alpha, or
> > > do we want to change the model by excluding such operations from
> > > address dependencies?
> > 
> > I vote for adding the barrier on Alpha.  However, I don't know of any
> > code in the Linux kernel that relies on read-to-read address dependency
> > ordering headed by a failing RMW operation, so I don't feel all that
> > strongly about this.
> 
> Right, but not knowing doesn't mean doesn't exist, and most certainly
> doesn't mean will never exist.

Fair enough, safety first!

> > > Note that operations like atomic_add_unless() already include memory 
> > > barriers.
> > 
> > And I don't see an atomic_add_unless_relaxed(), so we are good on this
> > one.  So far, anyway!  ;-)
> 
> Not the point, add_unless() is a conditional operation, and therefore
> doesn't need to imply anything when failing.

Plus it doesn't return a pointer, so there is no problem with dereferences.
Unless someone wants to use its return value as an array index and rely
on dependency ordering to the array, but I would NAK that use case.

							Thanx, Paul

  reply	other threads:[~2018-02-20 14:49 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
2018-02-19 19:41                                   ` Paul E. McKenney
2018-02-19 20:28                                     ` Peter Zijlstra
2018-02-20 14:49                                       ` Paul E. McKenney [this message]
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=20180220144939.GG3617@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.