[RFC][PATCH 0/4] swsusp: Fix hibernation/restore code ordering

Rafael J. Wysocki
2007-05-17T22:23:59Z

Hi,

In the face of this change:

http://marc.info/?l=linux-acpi&m=117938245931603&w=2

I think we should also modify the code ordering in swsusp so that
hibernation_ops->prepare() is executed after device_suspend().

However, for this purpose it seems reasonable to eliminate the code duplication
between kernel/power/disk.c and kernel/power/user.c first. By eliminating it
we can reduce the size of user.c quite substantially and remove the
maintenance difficulty with making essentially the same changes in two
different places.

Moreover, we should also remove the calls to "platform" functions from the
restore code path, since it doesn't carry out any power transition of the
system, but we generally need to disable the GPEs before the restore if the
'platform' hibernation mode has been used. To do this, we can introduce
two new hibernation_ops to be used in the restore code.

Comments welcome.

Greetings,
Rafael

--
If you don't have the time to read,
you don't have the time or the tools to write.
- Stephen King