[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+55aFxULkhZGhg-tTBBxBBvXbL7QV7f6zvwW7U2wHFijqGEqw@mail.gmail.com>
Date: Tue, 27 Mar 2018 20:14:07 -1000
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Sinan Kaya <okaya@...eaurora.org>
Cc: Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Alexander Duyck <alexander.duyck@...il.com>,
Will Deacon <will.deacon@....com>,
Arnd Bergmann <arnd@...db.de>, Jason Gunthorpe <jgg@...pe.ca>,
David Laight <David.Laight@...lab.com>,
Oliver <oohall@...il.com>,
"open list:LINUX FOR POWERPC (32-BIT AND 64-BIT)"
<linuxppc-dev@...ts.ozlabs.org>,
"linux-rdma@...r.kernel.org" <linux-rdma@...r.kernel.org>,
Alexander Duyck <alexander.h.duyck@...hat.com>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: RFC on writel and writel_relaxed
On Tue, Mar 27, 2018 at 5:24 PM, Sinan Kaya <okaya@...eaurora.org> wrote:
>
> Basically changing it to
>
> dma_buffer->foo = 1; /* WB */
> wmb()
> writel_relaxed(KICK, DMA_KICK_REGISTER); /* UC */
> mmiowb()
Why?
Why not just remove the wmb(), and keep the barrier in the writel()?
The above code makes no sense, and just looks stupid to me. It also
generates pointlessly bad code on x86, so it's bad there too.
Linus
Powered by blists - more mailing lists