lkml.org 
[lkml]   [2004]   [Feb]   [15]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
DateSun, 15 Feb 2004 11:40:16 +0100
FromWilly Tarreau <>
Subject[PATCH] fix ACPI poweroff in 2.4.25-rc2
Hi Len,

based on your suggestions, I've read several bug reports about poweroff
problems. I discovered that some people had to pass "nolapic" to make it
operational. I tried the same on my VAIO and it worked. I also found that
other people had to call the old acpi_suspend(ACPI_STATE_S5) code instead
of the new one in acpi_power_off().

So I compared acpi_suspend() with the new code, and noticed that acpi_suspend()
calls acpi_system_save_state() before doing acpi_enter_sleep_state_prep(). This
function is responsible for sending PM events to all system devices, it seems.
Thus, I inserted this call in acpi_poweroff() and it now works (on the VAIO
at least). Does it make sense ? I have yet to test it on other systems, but
if people with poweroff problems could try this patch on top of 2.4.25-rc2,
it would be interesting. Perhaps it could get its way into mainline before
2.4.25 ? Please note that with this one, it's no longer necessary to use
"nolapic" on the command line (for my notebook at least).

Regards,
Willy

--- linux-2.4.25-rc2/drivers/acpi/system.c	Wed Nov 19 15:31:22 2003
+++ linux-2.4.25-rc2-acpi/drivers/acpi/system.c	Sun Feb 15 11:38:17 2004
@@ -95,6 +95,7 @@
 {
 	if (unlikely(in_interrupt())) 
 		BUG();
+	acpi_system_save_state(ACPI_STATE_S5);
 	acpi_enter_sleep_state_prep(ACPI_STATE_S5);
 	ACPI_DISABLE_IRQS();
 	acpi_enter_sleep_state(ACPI_STATE_S5);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:00    [from the cache]
©2003-2008