public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Akira Yokosawa <akiyks@gmail.com>
To: Arnd Bergmann <arnd@arndb.de>, Parav Pandit <parav@nvidia.com>
Cc: bagasdotme@gmail.com, Alan Stern <stern@rowland.harvard.edu>,
	parri.andrea@gmail.com, Will Deacon <will@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	boqun.feng@gmail.com, Nicholas Piggin <npiggin@gmail.com>,
	dhowells@redhat.com, j.alglave@ucl.ac.uk, luc.maranget@inria.fr,
	"Paul E. McKenney" <paulmck@kernel.org>,
	dlustig@nvidia.com, Joel Fernandes <joel@joelfernandes.org>,
	Jonathan Corbet <corbet@lwn.net>,
	linux-kernel@vger.kernel.org,
	Linux-Arch <linux-arch@vger.kernel.org>,
	linux-doc@vger.kernel.org, Akira Yokosawa <akiyks@gmail.com>
Subject: Re: [PATCH v4] locking/memory-barriers.txt: Improve documentation for writel() example
Date: Tue, 18 Oct 2022 16:40:06 +0900	[thread overview]
Message-ID: <a91e8216-7767-9126-e1d2-c67846cf32fc@gmail.com> (raw)
In-Reply-To: <12f51033-1461-43f9-8d8d-cd726fbb4758@app.fastmail.com>

On Tue, 18 Oct 2022 08:44:09 +0200, Arnd Bergmann wrote:
> On Tue, Oct 18, 2022, at 3:37 AM, Akira Yokosawa wrote:
>> On 2022/10/18 5:55, Arnd Bergmann wrote:
>>> On Mon, Oct 10, 2022, at 12:13 PM, Parav Pandit wrote:
>>
>> "a barrier" can mean "any barrier", which can include a full barrier
>> in theory.
>>
>> So I'd rather make the substituted text read something like:
>>
>>   Note that, when using writel(), a prior wmb() or weaker is not
>>   needed to guarantee that the cache coherent memory writes have
>>   completed before writing to the MMIO region.
>>
>> In my opinion, "or weaker" is redundant for careful readers who are
>> well aware of context of this example, but won't do no harm.
> 
> I think that would be more confusing than either of the other variants.
> 
> Anything weaker than a full "wmb()" probably makes the driver calling
> the writel() non-portable, so that is both vague and incorrect.

Do you mean there is a writel() implementation somewhere in the kernel
which doesn't guarantee an implicit wmb() before MMIO write?

Or do you mean my version is confusing because it can imply a weaker
write barrier is sufficient before writel_relaxed()?

I'm confused...

        Thanks, Akira

> 
> The current version works because it specifically mentions the correct
> barrier to use, while Parav's version works because it doesn't
> make any attempt to name the specific barrier and just states that
> adding one is a bad idea regardless.
> 
>       Arnd

  reply	other threads:[~2022-10-18  7:40 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-10 10:13 [PATCH v4] locking/memory-barriers.txt: Improve documentation for writel() example Parav Pandit
2022-10-17 20:55 ` Arnd Bergmann
2022-10-18  1:37   ` Akira Yokosawa
2022-10-18  6:44     ` Arnd Bergmann
2022-10-18  7:40       ` Akira Yokosawa [this message]
2022-10-18  7:49         ` Arnd Bergmann
2022-10-18  9:23           ` Akira Yokosawa
2022-10-18 10:05   ` Will Deacon
2022-10-18 17:49     ` Paul E. McKenney
2022-10-18 20:33       ` Parav Pandit
2022-10-27 18:15         ` Paul E. McKenney
2022-10-27 18:24           ` Parav Pandit

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=a91e8216-7767-9126-e1d2-c67846cf32fc@gmail.com \
    --to=akiyks@gmail.com \
    --cc=arnd@arndb.de \
    --cc=bagasdotme@gmail.com \
    --cc=boqun.feng@gmail.com \
    --cc=corbet@lwn.net \
    --cc=dhowells@redhat.com \
    --cc=dlustig@nvidia.com \
    --cc=j.alglave@ucl.ac.uk \
    --cc=joel@joelfernandes.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luc.maranget@inria.fr \
    --cc=npiggin@gmail.com \
    --cc=parav@nvidia.com \
    --cc=parri.andrea@gmail.com \
    --cc=paulmck@kernel.org \
    --cc=peterz@infradead.org \
    --cc=stern@rowland.harvard.edu \
    --cc=will@kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox