From: Loic Prylli <loic@myri.com>
To: Jeff Garzik <jeff@garzik.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
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: Sun, 23 Dec 2007 00:27:02 -0500 [thread overview]
Message-ID: <476DF1A6.3060900@myri.com> (raw)
In-Reply-To: <476DE98F.2010009@garzik.org>
On 12/22/2007 11:52 PM, Jeff Garzik wrote:
>
> Absolutely.
>
> But regardless of problems, enabling should be done globally, not per
> device...
The "enabling globally" requirement, i.e. not per-device, neither
depending on reg >= 256 seems a very debatable assumption (IMHO a big
mistake) that seems to be responsible for many of the problems seen in
the past.
There might be for a very long time AMD-architectures where
extended-conf-space access for pci-express device works and is
beneficial (and where mmconf is not supported by the hardware on
non-pci-express devices). You are basically saying you don't want ever
to support extended-conf-space globally for those systems, where it
would be so easy to precisely use mmconf *only* when attempting
*extended-conf-space * (>= 256) to some device (that provides a strong
guarantee that you will never break anything unless somebody actually
tries to use the extended-conf-space).
Supporting extended-conf-space is independant of the issue of using
mmconf for legacy conf-space. There is no real reason to use the same
method to access both. I have seen several arguments used that were
implying that, and they all seem really bogus to me. Not only are the
two ranges (<= 256 and >= 256) structurally independant (you have
totally independant capabilities lists that are independantly organized
in each of them), even if they were not there is no consistency issue
that cannot be dealt with a memory barrier, and the concern about taking
an extra branch for each pci-conf-space access is also bogus once you
look at the numbers.
By possibly using different implementations for the two ranges you avoid
introducing a new API, you avoid taking risks with mmconf when you don't
need it. That doesn't preclude using mmconf for everything either if the
user requests it or based on enough knowledge of the system to be sure
nothing will break.
Loic
next prev parent reply other threads:[~2007-12-23 5:27 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
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 [this message]
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=476DF1A6.3060900@myri.com \
--to=loic@myri.com \
--cc=arjan@infradead.org \
--cc=benh@kernel.crashing.org \
--cc=gregkh@suse.de \
--cc=jeff@garzik.org \
--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