From: "Huang, Ying" <ying.huang@intel.com>
To: Pavel Machek <pavel@ucw.cz>,
Nigel Cunningham <nigel@nigel.suspend2.net>,
"Rafael J. Wysocki" <rjw@sisk.pl>,
Alan Stern <stern@rowland.harvard.edu>,
Jeremy
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-pm@lists.linux-foundation.org
Subject: khibernation and ACPI
Date: Fri, 28 Sep 2007 17:03:39 +0800 [thread overview]
Message-ID: <1190970219.11480.5.camel@caritas-dev.intel.com> (raw)
In following text, khibernation is the abbreviation of "kexec based
hibernation".
1. Kexec/kdump and ACPI
With Linux kernel 2.6.23-rc6-mm1 + khibernation patches on my IBM T42,
khibernation works well with ACPI. That is, the following is possible
with ACPI enabled.
a. Boot kernel A with ACPI on
b. Put devices in quiescent and low power state
c. Kexec a new kernel B with ACPI on
d. Jump back to kernel A
I think it should be a standard feature that the kexeced kernel can be
booted properly with devices been put in low power state. Because, if
the dynamic power management is enabled, some idle devices will be put
into low power state even in G0, when a crash dump is triggered, the
crash dump kernel should be booted properly even with devices been put
in low power state. If this not supported, the crash dump can not work
on system with dynamic power management on.
2. Khibernation and ACPI
Khibernation can work with ACPI even without feature above, because
image-writing kernel with initramfs can be booted independent of
device state. The scheme is as follow:
a. Boot kernel A with ACPI on
b. Put all devices in quiescent and low power state
c. Execute _PTS of ACPI
d. Kexec a new kernel B with ACPI on. The root filesystem is
initramfs, so that, the only devices needed by kernel B is timer.
e. In kernel B, put needed devices back to normal state.
f. Write memory image of kernel A out
g. Put all devices in quiescent and low power state
h. Execute acpi_enter_sleep_state(ACPI_STATE_S4)
Any comment is welcome.
Best Regards,
Huang Ying
next reply other threads:[~2007-09-28 9:03 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-28 9:03 Huang, Ying [this message]
2007-09-28 15:28 ` khibernation and ACPI Rafael J. Wysocki
2007-09-29 2:44 ` Huang, Ying
2007-10-04 10:12 ` Pavel Machek
2007-10-04 15:32 ` Rafael J. Wysocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1190970219.11480.5.camel@caritas-dev.intel.com \
--to=ying.huang@intel.com \
--cc=akpm@linux-foundation.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=nigel@nigel.suspend2.net \
--cc=pavel@ucw.cz \
--cc=rjw@sisk.pl \
--cc=stern@rowland.harvard.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox