lkml.org 
[lkml]   [2007]   [Jul]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: Hibernation considerations
    Date
    On Wednesday, 18 July 2007 16:29, Alan Stern wrote:
    > On Tue, 17 Jul 2007 david@lang.hm wrote:
    >
    > > On Tue, 17 Jul 2007, Alan Stern wrote:
    > >
    > > > On Tue, 17 Jul 2007 david@lang.hm wrote:
    > > >
    > > >>> But what about the freezer? The original reason for using kexec was to
    > > >>> avoid the need for the freezer. With no freezer, while the original
    > > >>> kernel is busy powering down its devices, user tasks will be free to
    > > >>> carry out I/O -- which will make the memory snapshot inconsistent with
    > > >>> the on-disk data structures.
    > > >>
    > > >> no, user tasks just don't get scheduled during shutdown.
    > > >
    > > > But a user task may be holding a lock which is needed for putting some
    > > > device into low-power mode. It can't release that lock if it doesn't
    > > > get scheduled.
    > >
    > > then you can't suspend that box. if you schedule it, it could get another
    > > lock (or another process gets another lock)
    > >
    > > if you can't power down or put hardware into low-power mode without the
    > > approval of userspace, you are in serious trouble.
    >
    > You don't seem to appreciate the issues involved here. Part of the
    > justification for the freezer is that it doesn't need userspace
    > approval and it freezes tasks at controlled points where they don't
    > hold any locks.
    >
    > Never mind. It seems clear that this approach will suffer the same
    > drawback as the proposal for removing the freezer from the
    > suspend-to-RAM pathway. Namely, device drivers will have to be changed
    > to prevent user I/O requests from proceeding while devices are supposed
    > to be quiescent or in a low-power state.

    I agree.

    > If a driver fails to handle this properly, its device could be
    > reactivated in order to service a user request before the memory
    > snapshot is made. This could easily ruin the snapshot.

    That's why I've been saying for quite some time that we first need to take care
    of the drivers. :-)

    IMO we've reached the point at which, whatever we want to do next, the drivers
    are in the way.

    Greetings,
    Rafael


    --
    "Premature optimization is the root of all evil." - Donald Knuth
    -
    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-07-18 16:43    [W:0.024 / U:90.892 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site