summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/sleep
diff options
context:
space:
mode:
authorEric W. Biederman2005-08-27 08:56:18 +0200
committerLinus Torvalds2005-08-27 19:11:40 +0200
commit8dbddf17824861f2298de093549e6493d9844835 (patch)
tree26d82a3ea3f1b7be05468ae7e811775851a06731 /drivers/acpi/sleep
parent[PATCH] mmaper_kern.c fixes [buffer overruns] (diff)
downloadkernel-qcow2-linux-8dbddf17824861f2298de093549e6493d9844835.tar.gz
kernel-qcow2-linux-8dbddf17824861f2298de093549e6493d9844835.tar.xz
kernel-qcow2-linux-8dbddf17824861f2298de093549e6493d9844835.zip
[PATCH] acpi_shutdown: Only prepare for power off on power_off
When acpi_sleep_prepare was moved into a shutdown method we started calling it for all shutdowns. It appears this triggers some systems to power off on reboot. Avoid this by only calling acpi_sleep_prepare if we are going to power off the system. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/acpi/sleep')
-rw-r--r--drivers/acpi/sleep/poweroff.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/acpi/sleep/poweroff.c b/drivers/acpi/sleep/poweroff.c
index 186b182c5825..f93d2ee54800 100644
--- a/drivers/acpi/sleep/poweroff.c
+++ b/drivers/acpi/sleep/poweroff.c
@@ -55,7 +55,11 @@ void acpi_power_off(void)
static int acpi_shutdown(struct sys_device *x)
{
- return acpi_sleep_prepare(ACPI_STATE_S5);
+ if (system_state == SYSTEM_POWER_OFF) {
+ /* Prepare if we are going to power off the system */
+ return acpi_sleep_prepare(ACPI_STATE_S5);
+ }
+ return 0;
}
static struct sysdev_class acpi_sysclass = {