All of lore.kernel.org
 help / color / mirror / Atom feed
From: Loic Prylli <loic@myri.com>
To: Linus Torvalds <torvalds@linux-foundation.org>,
	Arjan van de Ven <arjan@infradead.org>
Cc: Tony Camuso <tcamuso@redhat.com>, Matthew Wilcox <matthew@wil.cx>,
	Greg KH <greg@kroah.com>, Adrian Bunk <bunk@kernel.org>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Ivan Kokshaysky <ink@jurassic.park.msu.ru>,
	Greg KH <gregkh@suse.de>,
	linux-kernel@vger.kernel.org, Jeff Garzik <jeff@garzik.org>,
	linux-pci@atrey.karlin.mff.cuni.cz, Martin Mares <mj@ucw.cz>
Subject: Re: [Patch v2] Make PCI extended config space (MMCONFIG) a driver opt-in
Date: Tue, 15 Jan 2008 17:12:50 -0500	[thread overview]
Message-ID: <478D2FE2.3060502@myri.com> (raw)
In-Reply-To: <alpine.LFD.1.00.0801151137390.2806@woody.linux-foundation.org>



On 1/15/2008 2:38 PM, Linus Torvalds wrote:
> On Tue, 15 Jan 2008, Tony Camuso wrote:
>   
>> Linus is confident that conf1 is not going away for at least the
>> next five years.
>>     
>
> Not on PC's. Small birds tell me that there can be all these non-PC x86 
> subarchitectures that may or may not have conf1.
>
> 		Linus
>
>   




But is there a ACPI-compliant/architecture that only offers mmconfig for 
configuration-space access and no other fallback method (i.e. no conf1, 
no bios,...)?

2.6.24 supports mmconfig for:
 - ACPI-system with  MCFG
 - a couple chipset discovered by conf1


If a system has no conf1, but does not have e820+ACPI+MCFG, or does have 
some other method than mmconfig, it was already irrelevant in the 
discussion of Ivan's initial patch in december (because that system was 
either never supported or not impacted, and we were trying to fix bugs, 
not introduce support for new class of systems).


Maybe Arjan could share his knowledge, and tell us what system he was 
thinking about (and whether it needed to be supported by 2.6.24) when 
saying:
  "When (and I'm saying "when" not "if") systems arrive that only have 
MMCONFIG for some of the devices."


Anyway Ivan's patch + Matthew's extensions are handling that non-PC 
arch. That combination is advocated by at least:
Ivan Kokshaysky
Matthew Wilcox
Tony Camuso
Loic Prylli
even Arjan's said that while he prefers his patch (saying it's more 
conservative), he does not see a existing problem with the Ivan/Matthew 
combination.

[ simpler, less ambitious fixes can be forgotten if nothing can be done 
for 2.6.24, I can understand that choice ]


The list of problems I see with Arjan's patch are:
- no word on whether the existing Linux driver/pci/pcie/aer code should 
be converted to opt-in?
- mmconfig still needs to be revisited to sort-out the mix of 
mmconfig+conf1+third-method access.
- you cannot test if ext-conf-space is available without taking risks: 
when pci_enable_ext_config() is called, even legacy-conf-space is 
switched to the new method.  So some administrator action (lspci -v 
+maybe-other-flag) or some driver action (that can optionally use 
ext-conf-space but does not *rely* on it) could cause some devices to 
totally disappear (if some pci hierarchy is handled by mmconfig as a 
0xffffffff section as seen on many amd machines). Matthew/Ivan will 
simply in the worst case detect that ext-conf-space is not available in 
pci_cfg_space_size()), legacy-conf-space will still work (and that 
0xffffffff section is perfectly *safe* to query, tell me if you need 
more details of why).
- introduce a new user-api, and a new kernel API, while in practice 
there is no evidence that brings any benefits compared to Ivan/Matthew.


IMHO, making  "pci=nommconf" the default behaviour is better than 
Arjan's patch: for the exaggerated 99.99% users he claims don't need 
ext-conf-space, that's obviously as good. And many of the others would 
benefit from the ability to test and optionally use ext-conf-space is 
available without taking the risk of crashing something, so something 
else is better for them.


With Arjan's patch, in 10 years, we might still have to use an extra 
option (or some other action) when using lspci to display extended caps, 
and we would still run the risk of crashing some old machine when doing 
so (unless maybe a blacklist of some sort will be added, making the 
newly introduced API completely useless soon, or unless we keep the 
painful bitmaps in mmconfig potentially ending-up with 3 set of pci-ops).


Loic


  parent reply	other threads:[~2008-01-15 22:14 UTC|newest]

Thread overview: 156+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-25 11:26 [Patch v2] Make PCI extended config space (MMCONFIG) a driver opt-in Arjan van de Ven
2007-12-27 11:52 ` Jeff Garzik
2007-12-27 14:09   ` Arjan van de Ven
2007-12-27 17:52   ` Linus Torvalds
2008-01-11 19:02 ` Greg KH
2008-01-11 19:09   ` Arjan van de Ven
2008-01-11 19:14     ` Greg KH
2008-01-11 19:28   ` Matthew Wilcox
2008-01-11 19:40     ` Arjan van de Ven
2008-01-11 19:45       ` Greg KH
2008-01-11 19:49         ` Matthew Wilcox
2008-01-11 19:58           ` Linus Torvalds
2008-01-11 20:17             ` Matthew Wilcox
2008-01-11 20:27               ` Linus Torvalds
2008-01-11 20:42                 ` Matthew Wilcox
2008-01-11 21:12                   ` Linus Torvalds
2008-01-11 21:17                     ` Matthew Wilcox
2008-01-11 21:28                       ` Linus Torvalds
2008-01-11 21:38                         ` Matthew Wilcox
2008-01-11 23:58                           ` Ivan Kokshaysky
2008-01-12  0:17                             ` Jesse Barnes
2008-01-12  0:26                             ` Greg KH
2008-01-12 14:40                               ` Ivan Kokshaysky
2008-01-12 15:46                                 ` Arjan van de Ven
2008-01-12 16:23                                   ` Ivan Kokshaysky
2008-01-12 17:45                                 ` Arjan van de Ven
2008-01-12 18:17                                   ` Matthew Wilcox
2008-01-12 21:49                                   ` Ivan Kokshaysky
2008-01-12 23:01                                     ` Arjan van de Ven
2008-01-13  0:12                                       ` Tony Camuso
2008-01-13  0:40                                         ` Arjan van de Ven
2008-01-13  1:36                                           ` Tony Camuso
2008-01-13  4:42                                             ` Arjan van de Ven
2008-01-13  4:47                                               ` Matthew Wilcox
2008-01-13  6:43                                                 ` Jeff Garzik
2008-01-13 12:43                                               ` Tony Camuso
2008-01-13 17:03                                                 ` Arjan van de Ven
2008-01-13 21:28                                                   ` Tony Camuso
2008-01-14  0:54                                                     ` Alan Cox
2008-01-14  1:33                                                       ` Arjan van de Ven
2008-01-14  3:29                                                         ` Tony Camuso
2008-01-14  5:05                                                           ` Arjan van de Ven
2008-01-14 13:01                                                             ` Tony Camuso
2008-01-14 14:46                                                               ` Arjan van de Ven
2008-01-14 15:23                                                                 ` Tony Camuso
2008-01-14 16:01                                                                   ` Arjan van de Ven
2008-01-14 16:08                                                                     ` Tony Camuso
2008-01-14  9:11                                                         ` Alan Cox
2008-01-14  5:20                                                       ` Linus Torvalds
2008-01-13 18:23                                   ` Loic Prylli
2008-01-13 18:41                                     ` Arjan van de Ven
2008-01-13 20:43                                       ` Matthew Wilcox
2008-01-13 21:18                                         ` Loic Prylli
2008-01-13 20:51                                       ` Loic Prylli
2008-01-13  7:08                                 ` Benjamin Herrenschmidt
2008-01-13  7:24                                   ` Matthew Wilcox
2008-01-13  7:58                                     ` Matthew Wilcox
2008-01-13 17:01                                     ` Arjan van de Ven
2008-01-14 22:52                                       ` Matthew Wilcox
2008-01-14 23:04                                         ` Adrian Bunk
2008-01-15 16:00                                           ` Loic Prylli
2008-01-15 17:46                                             ` Greg KH
2008-01-15 17:56                                               ` Matthew Wilcox
2008-01-15 19:27                                                 ` Tony Camuso
2008-01-15 19:38                                                   ` Linus Torvalds
2008-01-15 19:40                                                     ` Matthew Wilcox
2008-01-15 22:12                                                     ` Loic Prylli [this message]
2008-01-19 16:58                                                 ` Grant Grundler
2008-01-28 18:32                                                   ` Tony Camuso
2008-01-28 20:44                                                     ` Greg KH
2008-01-28 22:31                                                       ` Matthew Wilcox
2008-01-28 22:53                                                         ` Greg KH
2008-01-29  2:56                                                           ` Matthew Wilcox
2008-01-29  2:57                                                             ` PCI x86: always use conf1 to access config space below 256 bytes Matthew Wilcox
2008-01-29 13:21                                                               ` Greg KH
2008-01-29 23:43                                                                 ` Matthew Wilcox
2008-01-30  0:04                                                                   ` Linus Torvalds
2008-01-29  3:03                                                             ` [PATCH] Change pci_raw_ops to pci_raw_read/write Matthew Wilcox
2008-02-03  7:30                                                               ` Yinghai Lu
2008-02-07 15:54                                                                 ` Tony Camuso
2008-02-07 16:28                                                                   ` Arjan van de Ven
2008-02-07 16:36                                                                     ` Tony Camuso
2008-02-08  2:28                                                                       ` Grant Grundler
2008-02-09 12:41                                                                   ` Matthew Wilcox
2008-02-10  6:25                                                                     ` Yinghai Lu
2008-02-10  7:21                                                                       ` Greg KH
2008-02-10 14:51                                                                         ` Matthew Wilcox
2008-02-10 19:13                                                                           ` Grant Grundler
2008-02-10 19:37                                                                             ` Matthew Wilcox
2008-02-10 20:16                                                                           ` Yinghai Lu
2008-02-10 20:19                                                                             ` Matthew Wilcox
2008-02-10 20:25                                                                               ` Yinghai Lu
2008-02-10 20:32                                                                                 ` Matthew Wilcox
2008-02-10 20:47                                                                                   ` Yinghai Lu
2008-02-10 20:24                                                                             ` Linus Torvalds
2008-02-10 20:45                                                                               ` Matthew Wilcox
2008-02-10 23:02                                                                                 ` raw_pci_read in quirk_intel_irqbalance Matthew Wilcox
2008-02-11  5:04                                                                                   ` Matthew Wilcox
2008-02-11  7:49                                                                                     ` Grant Grundler
2008-02-11 16:15                                                                                       ` Matthew Wilcox
2008-02-11 17:18                                                                                         ` Linus Torvalds
2008-02-11 19:38                                                                                           ` Grant Grundler
2008-02-11  1:49                                                                                 ` [PATCH] Change pci_raw_ops to pci_raw_read/write Yinghai Lu
2008-02-11  2:53                                                                                   ` Robert Hancock
2008-02-11  5:59                                                                                     ` Yinghai Lu
2008-02-11 22:10                                                                                   ` Andrew Morton
2008-02-11 22:38                                                                                     ` Ingo Molnar
2008-01-29  3:05                                                       ` [Patch v2] Make PCI extended config space (MMCONFIG) a driver opt-in Arjan van de Ven
2008-01-29  3:18                                                         ` Matthew Wilcox
2008-01-29 13:19                                                           ` Greg KH
2008-01-29 14:15                                                             ` Tony Camuso
2008-01-29 14:47                                                               ` Arjan van de Ven
2008-01-29 15:15                                                                 ` Tony Camuso
2008-01-29 15:29                                                                   ` Arjan van de Ven
2008-01-29 16:26                                                                     ` Tony Camuso
2008-01-29 23:57                                                                     ` Matthew Wilcox
2008-01-30  2:30                                                                       ` Tony Camuso
2008-01-30  3:45                                                             ` Matthew Wilcox
2008-01-30 15:15                                                               ` Ivan Kokshaysky
2008-01-30 15:42                                                                 ` Arjan van de Ven
2008-01-30 20:14                                                                   ` Ivan Kokshaysky
2008-01-31  5:51                                                             ` Jesse Barnes
2008-01-11 19:54   ` Arjan van de Ven
2008-01-11 20:55     ` Greg KH
2008-01-15 12:58 ` Øyvind Vågen Jægtnes
     [not found] <fa.m7tRTz/ymu3iMyLTO2aF1Tvaw24@ifi.uio.no>
     [not found] ` <fa.XrRLIuL4juNAXXaMPF3iY8FyWW8@ifi.uio.no>
     [not found]   ` <fa.gv3MUHxQvd7EaG/0hhC9IzBvIlA@ifi.uio.no>
2007-12-27 17:59     ` Robert Hancock
2007-12-27 19:47       ` Arjan van de Ven
     [not found]   ` <fa.H0fcNl3b6xVBwzWUgT72M4K6KOU@ifi.uio.no>
2007-12-27 18:15     ` Robert Hancock
2007-12-27 18:30       ` Kai Ruhnau
2007-12-27 18:58       ` Linus Torvalds
2007-12-27 21:10         ` Loic Prylli
2007-12-27 21:21           ` Matthew Wilcox
2007-12-27 21:37           ` Linus Torvalds
2007-12-27 21:46             ` Linus Torvalds
2007-12-27 22:18               ` Kai Ruhnau
2007-12-28  4:27                 ` Daniel Barkalow
2007-12-28  5:32                   ` Linus Torvalds
2007-12-28  6:07                     ` Daniel Barkalow
2007-12-28 10:34                       ` Ivan Kokshaysky
2007-12-28 16:14                         ` Arjan van de Ven
2007-12-28 16:38                           ` Ivan Kokshaysky
2007-12-28 17:40                             ` Loic Prylli
2007-12-28 21:12                               ` Ivan Kokshaysky
2008-01-13  6:01                                 ` Matthew Wilcox
2008-01-13  7:19                                   ` Loic Prylli
2007-12-28  5:31                 ` Benjamin Herrenschmidt
2007-12-27 21:59             ` Kai Ruhnau
2007-12-28  5:27             ` Benjamin Herrenschmidt
2007-12-28  5:29             ` Benjamin Herrenschmidt
2007-12-28  5:37               ` Linus Torvalds
2007-12-28  6:06                 ` Benjamin Herrenschmidt
2007-12-28 19:14                   ` Loic Prylli
2007-12-28 20:42                     ` Benjamin Herrenschmidt
2007-12-28  0:18         ` Robert Hancock
     [not found] <fa.2KorSXroIUtdRjFJWJwy49QuIYk@ifi.uio.no>
     [not found] ` <fa.KgDY4hzBogAL+o607R+LHzW+HTc@ifi.uio.no>
     [not found]   ` <fa.xzH/eH5b6vCHpOD31Cq2nyq6z/k@ifi.uio.no>
     [not found]     ` <fa.EPUIDYIoxtDNcRrL9p3fAkr80Lo@ifi.uio.no>
     [not found]       ` <fa.uPoC9dcdekzy7g8QYFyuwelukiQ@ifi.uio.no>
     [not found]         ` <fa.O9WUKjAu+MfGg712w8Y4HkQ7GIo@ifi.uio.no>
2008-01-13  1:56           ` Robert Hancock
     [not found]   ` <fa.y9bLGEm23C6rL/wz7kMpKYF67oM@ifi.uio.no>
     [not found]     ` <fa.S+otiE5kNySVMlhUagdf/n9GRIc@ifi.uio.no>
     [not found]       ` <fa.OH5C/OjPYJXn8kSOHV/09piVz0E@ifi.uio.no>
     [not found]         ` <fa.jj0GkdAagaR3CLapBSdT1psD3Ps@ifi.uio.no>
     [not found]           ` <fa.EgRiN/duILxBcenHk7dQyC+rldw@ifi.uio.no>
2008-01-14 23:59             ` Robert Hancock

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=478D2FE2.3060502@myri.com \
    --to=loic@myri.com \
    --cc=arjan@infradead.org \
    --cc=benh@kernel.crashing.org \
    --cc=bunk@kernel.org \
    --cc=greg@kroah.com \
    --cc=gregkh@suse.de \
    --cc=ink@jurassic.park.msu.ru \
    --cc=jeff@garzik.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@atrey.karlin.mff.cuni.cz \
    --cc=matthew@wil.cx \
    --cc=mj@ucw.cz \
    --cc=tcamuso@redhat.com \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.