Messages in this thread | | | Date | Thu, 20 Dec 2007 15:05:52 -0500 | From | Loic Prylli <> | Subject | Re: [Fwd: Re: [PATCH 0/5]PCI: x86 MMCONFIG] |
| |
On 12/20/2007 2:08 PM, Matthew Wilcox wrote: > On Thu, Dec 20, 2007 at 02:04:31PM -0500, Tony Camuso wrote: > >> Also, this solution also would allow us to remove the unreachable_devices() >> routine and bitmap. >> > > Not really ... we probe reading address 0x100 to see if the device > supports extended config space or not. So we need to make that fail > gracefully for the amd7111 case. >
pci_cfg_space_size() is only done for PCI-express or PCI-X mode 2 devices, so you still have eliminated the bulk of the problems which are typically handling the legacy busses on modern machines. I don't know what is the amd7111.
> >> Does anybody see a down side to this? >> > > It'll be slower than it would be if we used mmconfig directly. Now yes, > nobody should be using pci config space in performance critical paths > ... but see the tg3 driver. >
I am not familiar with the tg3 driver, just trying to give a 5 minutes look, it seems the typical cases where the pci-conf-space is used intensively are with some rev in combination with the 82801 (TG3_FLG2_ICH_WORKAROUND) which I don't think support mmconfig anyway, as well as some very specific PCI-X combinations (TG3_FLAG_PCIX_TARGET_HWBUG) which are also very unlikely to support mmconfig.
Even if I am wrong for the tg3, I don't really think mmconfig vs type1 could make a noticeable performance on any common systems (obscure systems or hardware where it could potentially have a performance impact could use a non-default configuration).
Loic
| |