Re: pci-disable-decode-of-io-memory-during-bar-sizing.patch

Arjan van de Ven
2007-10-30T17:32:44Z

On Tue, 30 Oct 2007 10:07:48 -0700 (PDT)
Linus Torvalds <torvalds@linux-foundation.org> wrote:
>
> > > The fact is, CONF1 style accesses are just safer, and *work*.
> >
> > I would suggest a slight twist then: use CONF1 *until* you're using
> > something above 256, and then and only then switch to MMCONFIG from
> > then on for all accesses.
>
> No.
>
> Maybe if you do it per-device, and only *after* probing (ie we have
> seen multiple, and successful, accesses), but globally, absolutely
> not. That would be useless. The bugs we have had in this area have
> been exactly the kinds of things like "we don't know the real size of
> the MMCONFIG areas" etc.

sorry I wasn't very clear, I meant "per device".

>
> I could easily see device driver writers probing to see if something
> works, and I absolutely don't think we should just automatically
> enable MMCONFIG from then on.
>
> But maybe we could have a per-device flag that a driver *can* set. Ie
> have the logic be:
>
> - use MMCONFIG if we have to (reg >= 256)
>
> OR
>
> - use MMCONFIG if the driver specifically asked us to

something like
int pci_enable_mmconfig(struct pci_dev *pdev) ?
sounds like a very solid plan to me...

> Maybe somebody inside Intel could just clarify the documentation, and
> change it from "you're not supposed to mix" to "mix all you want".

I'll see what I can do ;)

--
If you want to reach me at my work email, use arjan@linux.intel.com
For development, discussion and tips for power savings,
visit http://www.lesswatts.org