Re: [PATCH 01/20] asm-generic/mmiowb: Add generic implementation of mmiowb() tracking

From: Nicholas Piggin
Date: Sat Mar 02 2019 - 22:40:03 EST

Linus Torvalds's on March 3, 2019 12:18 pm:
> On Sat, Mar 2, 2019 at 5:43 PM Nicholas Piggin <npiggin@xxxxxxxxx> wrote:
>> Is there a reason to call this "mmiowb"? We already have wmb that
>> orders cacheable stores vs mmio stores don't we?
> Sadly no it doesn't. Not on ia64, and people tried to make that the
> new rule because of the platform breakage on what some people thought
> would be a major platform.

Let me try this again, because I was babbling a train of thought
continuing from my past mails on the subject.

Kill mmiowb with fire.

It was added for a niche platform that hasn't been produced for 10
years for a CPU ISA that is no longer being developed. Let's make mb/wmb
great again (aka actually possible for normal people to understand).

If something comes along again that reorders mmios from different CPUs
in the IO controller like the Altix did, they implement wmb the slow and
correct way. They can add a new faster primitive for the few devices
they care about in the couple of perf critical places that matter.

It doesn't have to be done all at once with this series, obviously this
is a big improvement on its own. But why perpetuate the nomenclature
and concept for new code added now?