[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200707161406.28539.rjw@sisk.pl>
Date: Mon, 16 Jul 2007 14:06:27 +0200
From: "Rafael J. Wysocki" <rjw@...k.pl>
To: david@...g.hm
Cc: LKML <linux-kernel@...r.kernel.org>,
Alan Stern <stern@...land.harvard.edu>,
Andrew Morton <akpm@...ux-foundation.org>,
"Eric W. Biederman" <ebiederm@...ssion.com>,
"Huang, Ying" <ying.huang@...el.com>,
Jeremy Maitin-Shepard <jbms@....edu>,
Kyle Moffett <mrmacman_g4@....com>,
Nigel Cunningham <nigel@...el.suspend2.net>,
Pavel Machek <pavel@....cz>,
pm list <linux-pm@...ts.linux-foundation.org>,
Al Boldi <a1426z@...ab.com>
Subject: Re: Hibernation considerations
On Monday, 16 July 2007 01:49, david@...g.hm wrote:
> On Mon, 16 Jul 2007, Rafael J. Wysocki wrote:
>
> > On Monday, 16 July 2007 00:42, david@...g.hm wrote:
> >> On Mon, 16 Jul 2007, Rafael J. Wysocki wrote:
> >>
> >>> On Sunday, 15 July 2007 22:13, david@...g.hm wrote:
> >>>> On Sun, 15 Jul 2007, Rafael J. Wysocki wrote:
> >>>>
> >>>>> The ACPI specification requires us to invoke some global ACPI methods
> >>>>> during the hibernation and during the restore. Moreover, the ordering of
> >>>>> code related to these ACPI methods may not be arbitrary (eg. some of
> >>>>> them have to be executed after devices are put into low power states etc.).
> >>>>
> >>>> for a pure hibernate mode, you will be powering off the box after saving
> >>>> the suspend image. why are there any special ACPI modes involved?
> >>>
> >>> Because, for example, on my machine the status of power supply (present
> >>> vs not present) is not updated correctly after the restore if ACPI callbacks
> >>> aren't used during the hibernation. That's just experience and it's in line
> >>> with the ACPI spec.
> >>
> >> so if a machine is actually powered off the /dev/suspend process won't
> >> work?
> >
> > No, it sort of works as usual, but after the restore the platform is not in the
> > correct state.
>
> this is not hibernate as I and many others are thinking of it.
>
> hibernate as we are thinking would work on basicly any hardware, including
> things with no ACPI or power savings support. and the system could be in
> hibernate mode for any time period.
>
> for that matter, after a system is put into hibernate mode the system
> could be completely disassembled and any components replaced and the
> system would work after a resume (assuming you still have access to the
> suspend image)
Well, this is not how ACPI defines the S4 sleep state. If the system is in
S4, that corresponds to our hibernation, you are _not_ allowed to disassemble
it.
I've just done an experiment on my test desktop. I had enabled suspend support
in the CMOS setup and afterwards I made Linux hibernate in the "platform" mode.
Then, when the system was powred on, the BIOS showed me a nice "Resume from
hibernation" screen that is not normally displayed during boot. This clearly
means that some information has been preserved by the platform across the
hibernate/restore cycle. We are supposed to handle that.
Greetngs,
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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists