Re: [RFC] [PATCH] Execute PCI quirks on resume from suspend-to-RAM

From: Carl-Daniel Hailfinger
Date: Thu May 11 2006 - 00:02:51 EST


Dave Jones wrote:
> On Wed, May 10, 2006 at 11:36:41PM +0200, Carl-Daniel Hailfinger wrote:
> > Greg KH wrote:
> > > On Wed, May 10, 2006 at 12:30:34PM +0200, Carl-Daniel Hailfinger wrote:
> > >> Thinking about it again, if we restored the full pci config space
> > >> on resume, this quirk handling would be completely unnecessary.
> > >> Any reasons why we don't do that?
> > >
> > > We do do that. Look at pci_restore_state().
> > >
> > > Actually, look at it in the latest -mm tree, that version works better
> > > than mainline does right now :)
> >
> > Sorry. Even the version in -mm does not restore all 256 bytes, so it
> > will not change anything.
>
> You can't generically look at a PCI device past the first 32 bytes.
> *anything* could be there, including registers which cause the machine
> to lock up when they get read.
>
> This is exactly the reason that lspci by default only shows 32 bytes,
> and you need to be root to see past that limit.

You mean 64 bytes?

> > So either we really restore the full config space (probably a good idea
> > by itself)
>
> No, *really* *really* bad idea :)

I had hoped the warnings in the lspci man page would be obsolete now.
Wishful thinking, it appears. Thanks for the hint.


Unfortunately, that means we either have to introduce a new PCI_FIXUP_
type or we execute PCI_FIXUP_HEADER also on resume. Which is better?


Regards,
Carl-Daniel
--
http://www.hailfinger.org/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/