From: Jeff Garzik <jeff@garzik.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Arjan van de Ven <arjan@infradead.org>,
linux-kernel@vger.kernel.org, gregkh@suse.de,
linux-pci@atrey.karlin.mff.cuni.cz,
Benjamin Herrenschmidt <benh@kernel.crashing.org>
Subject: Re: [patch] Make MMCONFIG space (extended PCI config space) a driver opt-in issue
Date: Sat, 22 Dec 2007 23:52:31 -0500 [thread overview]
Message-ID: <476DE98F.2010009@garzik.org> (raw)
In-Reply-To: <alpine.LFD.0.9999.0712222034150.21557@woody.linux-foundation.org>
Linus Torvalds wrote:
>
> On Sat, 22 Dec 2007, Jeff Garzik wrote:
>
>> My core assertion: the present situation -- turning off MMCONFIG aggressively
>> -- is greatly preferable to adding pci_enable_mmconfig_accesses(pdev).
>
> Well, you do realize that right now we have to have _users_ just doing
> "pci=nommconf" on the kernel command line, because we apparently don't do
> it aggressively enough?
>
> The fact is, we simply don't know what the breakage is. The only safe
> situation is to just assume things are broken, and enable it only when
> necessary.
Absolutely.
But regardless of problems, enabling should be done globally, not per
device... You have three possibilities for an mmconfig-maybe-capable
machine:
1) mmconfig disabled globally (for a single computer)
Widely tested by users and hw vendors
Consistent (all devices use same type of config access)
2) mmconfig enabled globally (for a single computer)
Poorly tested by hw vendors, apparently
Consistent (all devices use same type of config access)
3) mmconfig might or might not be enabled, depending on which driver is
loaded, whether it called an API or not.
Even LESS testing by hw vendors than #2. Maybe even "never"
Inconsistent (config access depends on device)
Choosing solution #3 is to choose the /least/ tested, /least/ likely to
get hw vendor testing, /most/ inconsistent solution available. Doing so
is not maximizing good engineering attributes :)
AFAICS, solution #3 has a much higher chance of breaking userspace
(pciutils, X.org, distro installers that read PCI config space, ...) as
a result of the inconsistencies introduced.
I agree 100% with your summary of the problem.
But the per-device enabling solution introduced a "mixed model" for
config space accesses is worse than any whitelist or other global [for a
single computer] solution.
The per-device enabling solution is IMO worse than simply deleting all
mmconfig code from the kernel. At least the "kill mmconfig" solution
would maintains the "tested" and "consistent" properties :)
Jeff
next prev parent reply other threads:[~2007-12-23 4:52 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-22 12:31 [patch] Make MMCONFIG space (extended PCI config space) a driver opt-in issue Arjan van de Ven
2007-12-22 12:35 ` [patch] opt the sky2 driver into using extended config space Arjan van de Ven
2007-12-22 20:28 ` Stephen Hemminger
2007-12-22 14:20 ` [patch] Make MMCONFIG space (extended PCI config space) a driver opt-in issue Jeff Garzik
2007-12-22 14:47 ` Arjan van de Ven
2007-12-22 15:54 ` Matthew Wilcox
2007-12-22 16:02 ` Arjan van de Ven
2007-12-22 21:10 ` Matthew Wilcox
2007-12-23 23:33 ` Benjamin Herrenschmidt
2007-12-22 18:06 ` Linus Torvalds
2007-12-22 19:30 ` Martin Mares
2007-12-22 20:15 ` Arjan van de Ven
2007-12-22 20:36 ` Martin Mares
2007-12-23 1:29 ` Jeff Garzik
2007-12-23 1:26 ` Jeff Garzik
2007-12-23 3:46 ` Linus Torvalds
2007-12-23 4:11 ` Jeff Garzik
2007-12-23 4:35 ` Linus Torvalds
2007-12-23 4:52 ` Jeff Garzik [this message]
2007-12-23 5:00 ` Linus Torvalds
2007-12-23 5:09 ` Jeff Garzik
2007-12-23 21:09 ` Benjamin Herrenschmidt
2007-12-23 21:15 ` Martin Mares
2007-12-23 22:32 ` Ivan Kokshaysky
2007-12-23 23:06 ` Benjamin Herrenschmidt
2007-12-23 23:19 ` Benjamin Herrenschmidt
2007-12-23 5:27 ` Loic Prylli
2007-12-23 5:44 ` Jeff Garzik
2007-12-23 8:33 ` Loic Prylli
2007-12-23 11:03 ` Ivan Kokshaysky
2007-12-23 17:32 ` Linus Torvalds
2007-12-24 7:31 ` Jeff Garzik
2007-12-24 18:51 ` Linus Torvalds
2007-12-24 21:22 ` Matthew Wilcox
2007-12-27 11:46 ` Jeff Garzik
2007-12-27 14:09 ` Arjan van de Ven
2007-12-24 7:22 ` Jeff Garzik
2007-12-24 15:47 ` Ivan Kokshaysky
2007-12-23 21:13 ` Benjamin Herrenschmidt
2007-12-23 10:33 ` Arjan van de Ven
2007-12-24 7:04 ` Jeff Garzik
2007-12-24 11:49 ` Arjan van de Ven
2007-12-24 11:54 ` Jeff Garzik
2007-12-24 12:00 ` Arjan van de Ven
2007-12-25 9:22 ` Martin Mares
2007-12-25 9:40 ` Martin Mares
2007-12-23 4:13 ` Jeff Garzik
2007-12-23 4:18 ` Jeff Garzik
2007-12-23 4:44 ` Linus Torvalds
2007-12-23 5:04 ` Jeff Garzik
2007-12-23 5:18 ` Linus Torvalds
2007-12-23 5:22 ` Jeff Garzik
2007-12-23 4:40 ` Linus Torvalds
2007-12-23 10:18 ` Martin Mares
2007-12-23 5:09 ` Loic Prylli
2007-12-23 5:57 ` H. Peter Anvin
2007-12-23 1:34 ` Jeff Garzik
2007-12-22 20:43 ` Benjamin Herrenschmidt
[not found] <fa.pFsY/52FEkQYqrDPnPMxmcUOsRY@ifi.uio.no>
2007-12-22 16:22 ` Robert Hancock
2007-12-22 19:25 ` Greg KH
2007-12-23 0:56 ` Jeff Garzik
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=476DE98F.2010009@garzik.org \
--to=jeff@garzik.org \
--cc=arjan@infradead.org \
--cc=benh@kernel.crashing.org \
--cc=gregkh@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@atrey.karlin.mff.cuni.cz \
--cc=torvalds@linux-foundation.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