lkml.org 
[lkml]   [2008]   [Dec]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: "APIC error on CPU1: 00(40)" during resume (was: Regression from 2.6.26: Hibernation (possibly suspend) broken on Toshiba R500)


    On Wed, 10 Dec 2008, Matthew Garrett wrote:

    > On Wed, Dec 10, 2008 at 08:26:37AM -0800, Linus Torvalds wrote:
    >
    > > So it looks like we don't reprogram the APIC -at-all- on secondary CPU's.
    > >
    > > What am I missing?
    >
    > We unplug all CPUs except the boot one at suspend time. Does the APIC
    > get reprogrammed when they're replugged on resume?

    Ahh, indeed. That ends up doing setup_local_APIC() in smp_callin().

    I wonder if we should do that from apic_resume() too - instead of saving
    any state we could probably just re-initialize it.

    The setup_local_APIC() function also seems to be a lot more careful than
    "resume_apic()" is about ordering (well, at least it has _comments_ on the
    ordering), and it does things like ack'ing all pending irq's.

    Hmm.

    Linus


    \
     
     \ /
      Last update: 2008-12-10 18:17    [W:0.023 / U:2.252 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site