Re: Regression from 2.6.26: Hibernation (possibly suspend) brokenon Toshiba R500 (bisected)

From: Ingo Molnar
Date: Thu Jan 29 2009 - 09:11:38 EST



* Frans Pop <elendil@xxxxxxxxx> wrote:

> On Friday 05 December 2008, Linus Torvalds wrote:
> > On Thu, 4 Dec 2008, Linus Torvalds wrote:
> > > The third thing that worries me is the _very_ early occurrence of
> > >
> > > ACPI: Waking up from system sleep state S3
> > > APIC error on CPU1: 00(40)
> > > ACPI: EC: non-query interrupt received, switching to interrupt mode
> > >
> > > Now, that "APIC error" thing is worrisome. It's worrisome for
> > > multiple reasons:
> > >
> > > - errors are never good (0x40 means "received illegal vector",
> > > whatever caused _that_)
> > >
> > > - more importantly, it seems to imply that interrupts are enabled on
> > > CPU1, and they sure as hell shouldn't be enabled at this stage!
> > >
> > > Do we perhaps have a SMP resume bug where we resume the other
> > > CPU's with interrupts enabled?
> > >
> > > - the "ACPI: EC: non-query interrupt received, switching to
> > > interrupt mode" thing is from ACPI, and _also_ implies that
> > > interrupts are on.
> > >
> > > Why are interrupts enabled that early? I really don't like seeing
> > > interrupts enabled before we've even done the basic PCI resume.
>
> Quick revival of this old thread with good news.
> The "APIC error on CPU1" message is now gone!

that was an old mystery!

So enabling interrupts too early (possibly before the lapic, the hpet or
both are initialized properly?) can generate an APIC error message?

> With current git head I get:
> ACPI: Waking up from system sleep state S3
> ACPI: EC: non-query interrupt received, switching to interrupt mode

i started getting those messages too - but earlier in the cycle, during
one of the ACPI merges i think.

Ingo
--
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/