[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0707171423280.2467@asgard.lang.hm>
Date: Tue, 17 Jul 2007 14:27:14 -0700 (PDT)
From: david@...g.hm
To: Jeremy Maitin-Shepard <jbms@....edu>
cc: "Rafael J. Wysocki" <rjw@...k.pl>,
Alan Stern <stern@...land.harvard.edu>,
LKML <linux-kernel@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
"Eric W. Biederman" <ebiederm@...ssion.com>,
"Huang, Ying" <ying.huang@...el.com>,
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 Tue, 17 Jul 2007, Jeremy Maitin-Shepard wrote:
> david@...g.hm writes:
>
> [snip]
>
>>> How do you guarantee that no tasks are scheduled when you get back to the
>>> hibernated kernel?
>
>> just don't schedule any userspace tasks. all you need to do is to execute the
>> ACPI sleep functions. you normally do that after stopping userspace
>> anyway.
>
> What does "stopping userspace" mean? You already said it does not mean
> disabling interrupts. But using the freezer is also not an option,
> since the avoidance of that is the main reason for the kexec approach in
> the first place.
just don't schedule any non-kernel threads.
remember that the normal shutdown/suspend procedure is (from another
related thread)
> >>sys_reboot(LINUX_REBOOT_CMD_KEXEC)
> >> kernel_kexec
> >> kernel_restart_prepare
> >> device_shutdown
> >> machine_shutdown
> >> machine_kexec
I'm just saying that instead of going back to the normal operation of the
kernel you just go directly to the new shutdown routine instead.
> [snip]
>
>>> Well, not exactly. If your battery runs out of power while you're suspended,
>>> but you have the image saved, it's still better to restore from the image,
>> even
>>> if something may not work correctly after the restore, than to risk a loss of
>>> data.
>
>> if things don't work correctly you are still risking the loss of data, the user
>> just doesn't know it.
>
> It should be possible on any system to do a hibernate followed by a
> shutdown (and then resume properly, without any problems). Thus, for
> handling suspend to both, you resume as if the system had been shutdown,
> rather than resuming as if the system came from S4.
I agree with this, but according to Rafael if the "hibernated" image is
assuming that the devices were put into low-power mode by ACPI and you
boot up instead the system doesn't work right.
David Lang
-
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