patch-2.4.23 linux-2.4.23/drivers/acpi/executer/exsystem.c

Next file: linux-2.4.23/drivers/acpi/hardware/hwacpi.c
Previous file: linux-2.4.23/drivers/acpi/executer/exstoren.c
Back to the patch index
Back to the overall index

diff -urN linux-2.4.22/drivers/acpi/executer/exsystem.c linux-2.4.23/drivers/acpi/executer/exsystem.c
@@ -129,18 +129,13 @@
 	ACPI_FUNCTION_ENTRY ();
 
 
-	if (how_long > 1000) /* 1 millisecond */ {
-		/* Since this thread will sleep, we must release the interpreter */
-
-		acpi_ex_exit_interpreter ();
-
-		acpi_os_sleep (0, (how_long / 1000) + 1);
-
-		/* And now we must get the interpreter again */
-
-		status = acpi_ex_enter_interpreter ();
+	if (how_long > 100) /* 100 microseconds */ {
+		/*
+		 * Longer than 100 usec, use sleep instead
+		 * (according to ACPI specification)
+		 */
+		status = acpi_ex_system_do_suspend ((how_long / 1000) + 1);
 	}
-
 	else {
 		acpi_os_stall (how_long);
 	}

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)