[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+55aFwi0tkdugfqNEz6M28RXM2jx6WpaDF4nfA=doUVdZgUNQ@mail.gmail.com>
Date: Fri, 30 Jun 2017 10:16:15 -0700
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: Andi Kleen <ak@...ux.intel.com>, Yinghai Lu <yinghai@...nel.org>,
Stephane Eranian <eranian@...gle.com>,
"H. Peter Anvin" <hpa@...or.com>, Ingo Molnar <mingo@...nel.org>,
Peter Zijlstra <peterz@...radead.org>,
Borislav Petkov <bp@...en8.de>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Bjorn Helgaas <helgaas@...nel.org>,
Matthew Wilcox <willy@...ux.intel.com>,
Ivan Kokshaysky <ink@...assic.park.msu.ru>,
"linux-tip-commits@...r.kernel.org"
<linux-tip-commits@...r.kernel.org>
Subject: Re: [tip:x86/platform] x86/PCI/mmcfg: Switch to ECAM config mode if possible
On Fri, Jun 30, 2017 at 7:30 AM, Thomas Gleixner <tglx@...utronix.de> wrote:
>> But MCFG problems were a long time ago and noone uses these systems anymore,
>> so perhaps he is right.
>
> The obvious solution to this is to force type 1 for older machines, i.e. <=
> K8. Some day we should stop supporting 15+ years old crap just because we
> can.
No.
The fact is, type 1 is the *good* thing. It's the standard thing that
has worked pretty much forever, and that is not just tested, but has
good semantics.
The new stuff is the crazy crap. It's crazy crap in so many ways:
- non-deterministic memory addresses found in firmware tables that
have had bugs
- using MMIO means that there are lots of basic issues with
fundamental things like write gathering and ordering
The right thing to do is to just admit that the extended mmcfg isn't
actually the rigth thjing to do by default, and only use it when you
have to.
"Newer" does not always mean "better", and there's been lots of bad
hardware (and bad firmware).
So use the "enhanced" one for stuff above the 256-byte limit. Not for
basic probing.
Anmd don't think that it should be phased out just because it's old.
Old is often *good*. Old means stable. Old means tested. Old means
simple. Those are all *good* thing.
Linus
Powered by blists - more mailing lists