Messages in this thread Patches in this message | | | Date | Thu, 10 Jul 2003 09:58:50 +0200 | From | Willy Tarreau <> | Subject | Re: Linux 2.4.22-pre4 |
| |
Hi !
On Thu, Jul 10, 2003 at 07:23:32AM +0200, Aschwin Marsman wrote: > On Wed, 9 Jul 2003, Marcelo Tosatti wrote: > > > Hi, > > > > Here goes -pre4. It contains a lot of updates and fixes. > > > > We decided to include this new code quota code which allows usage of > > quotas with 32bit UID/GIDs. > > > > Most Toshibas should work now due to an important ACPI fix. > > > > Please help and test. > > I use -pre3 with succes, only power down is currently not working > (only the discs shutdown, no real poweroff). That's why I disabled > apm and enabled apm in the kernel with -pre4, but that gives:
I remember having had problems with ACPI because my power off didn't work. After reading through the code, I noticed that due to erroneous comparisons, some code path would never be executed, and/or some preparatory work before entering S5 would be done twice, or could not recover from error, I don't recall exactly. So I sent the two patches below to the acpi-devel list twice, but never got any reply.
I don't even know if they still apply, but you can try them anyway, they're simple.
If I recall correctly, the first one should be enough to poweroff with a simple "echo 5 > /proc/acpi/sleep", while the second one allows the system to use this for poweroff.
Cheers, Willy
--- ./drivers/acpi/system.c-orig Tue Apr 29 17:39:34 2003 +++ ./drivers/acpi/system.c Tue Apr 29 19:08:09 2003 @@ -180,7 +180,7 @@ return AE_ERROR; } - if (state < ACPI_STATE_S5) { + if (state <= ACPI_STATE_S5) { /* Tell devices to stop I/O and actually save their state. * It is theoretically possible that something could fail, * so handle that gracefully.. @@ -277,6 +277,7 @@ switch (state) { case ACPI_STATE_S1: + case ACPI_STATE_S5: barrier(); status = acpi_enter_sleep_state(state); break;
--- ./drivers/acpi/system.c-orig Tue Apr 29 19:09:19 2003 +++ ./drivers/acpi/system.c Tue Apr 29 19:36:08 2003 @@ -90,9 +90,7 @@ static void acpi_power_off (void) { - acpi_enter_sleep_state_prep(ACPI_STATE_S5); - ACPI_DISABLE_IRQS(); - acpi_enter_sleep_state(ACPI_STATE_S5); + acpi_suspend(ACPI_STATE_S5); } #endif /*CONFIG_PM*/
- 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/
| |