Re: [linux-pm] [PATCH] Remove process freezer from suspend to RAM pathway

Alan Stern
2007-07-04T15:38:57Z

On Wed, 4 Jul 2007, Paul Mackerras wrote:

> Rafael J. Wysocki writes:
>
> > They are mostly related to kernel threads, that we've already agreed no to
> > freeze (except for the ones that want that, but they will be responsible for
> > getting everything right). The initial patches for that are in -mm and more
> > will come.
>
> Serious question: which kernel threads would actually want to be
> frozen?

khubd and ksuspend_usbd.

> Threads that do no I/O at all don't care about suspend/resume and
> don't need to be frozen in any case. Threads that issue I/O requests
> in order to service incoming I/O requests can't be frozen because of
> the possibility of deadlock. Which leaves threads that do I/O just
> for the fun of it. :)
>
> What am I missing?

Those two threads will try to resume USB devices in response to wakeup
requests. Such requests arrive during a suspend or resume transition
more often than one would expect.

If the resume attempt occurs before the host controller has been
suspended, it will abort the system suspend. If it occurs after the
host controller is suspended (and before the controller resumes) it
will fail and try to unregister the USB device -- something else we
don't like happening while the sytem is only partially up (not to
mention the annoyance caused by the unregistration of a perfectly
functional device).

Alan Stern