lkml.org 
[lkml]   [2007]   [May]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: pcmcia resume 60 second hang. Re: [patch 00/69] -stable review


    On Fri, 25 May 2007, Pavel Machek wrote:
    > >
    > > Equally arguably, we should just have a "resume_late()" call that can be
    > > used to do this after everything is up and running.
    >
    > Yes, we can do that. But userland will see devices "not there" for a
    > few seconds after boot.

    No they won't.

    Why the HELL cannot you realize that kernel threads are different?

    The right thing to do is AND HAS ALWAYS BEEN, to stop and start user
    threads only around the whole thing.

    Don't touch those kernel threads. Stop freezing them.

    Then, what you do is:
    - stop user space
    - suspend
    - resume
    - start user space

    and at no point do you touch any kernel threads.

    And yes, that "resume" part is multi-phase. We already have
    "resume_early()" to do bus-level setup, and then "resume()" to do the
    "make devices work". I was suggesting adding a "resume_late()" phase to
    let the devices do things that require other devices to work, like doing
    firmware loading.

    But stopping kernel threads is STUPID. As long as we continue to do that,
    it will never _ever_ work.

    Yeah, we could re-start the kernel thread before "resume_late()", but the
    fact is, they shouldn't have been stopped in the first place.

    Linus
    -
    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: 2007-05-25 00:15    [W:3.884 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site