lkml.org 
[lkml]   [2006]   [Jul]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [BUG] sleeping function called from invalid context during resume
    Hi!

    > >Lacking any other caller-passed indication, it would be much better for
    > >acpi to look at irqs_disabled(). That's effectively a task-local,
    > >cpu-local argument which was passed down to callees. It's hacky - it's
    > >like the PF_foo flags. But it's heaps better than having all
    > >the kernel fight over the state of a global.
    >
    > I didn't propose that kmalloc callers peek at system_state.
    > I proposed that system_state be set properly on resume
    > exactly like it is set on boot -- SYSTEM_RUNNING means
    > we are up with interrupts enabled.
    >
    > Note that this issue is not specific to ACPI, any other code
    > that calls kmalloc during resume will hit __might_sleep().
    > This is taken care of by system_state in the case of boot
    > and the callers don't know anything about it -- resume
    > is the same case and should work the same way.

    I'd agree with Andrew here -- lets not mess with system_state. It is
    broken by design, anyway.

    Part of code would prefer SYSTEM_BOOTING during resume (because we are
    initializing the devices), but I'm pretty sure some other piece of
    code will get confused by that.
    Pavel
    --
    (english) http://www.livejournal.com/~pavelmachek
    (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-07-08 02:33    [W:0.022 / U:0.140 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site