[PATCH] drivers/acpi: fix-up schedule_timeout() usage
authorNishanth Aravamudan <nacc@us.ibm.com>
Mon, 7 Nov 2005 09:01:14 +0000 (01:01 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 7 Nov 2005 15:53:56 +0000 (07:53 -0800)
Use schedule_timeout_interruptible() instead of
set_current_state()/schedule_timeout() to reduce kernel size.  Also use
msecs_to_jiffies() instead of direct HZ division to avoid rounding errors.

Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Cc: "Brown, Len" <len.brown@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/acpi/osl.c

index d528c75..e3cd0b1 100644 (file)
@@ -313,8 +313,7 @@ acpi_status acpi_os_remove_interrupt_handler(u32 irq, acpi_osd_handler handler)
 
 void acpi_os_sleep(acpi_integer ms)
 {
-       current->state = TASK_INTERRUPTIBLE;
-       schedule_timeout(((signed long)ms * HZ) / 1000);
+       schedule_timeout_interruptible(msecs_to_jiffies(ms));
 }
 
 EXPORT_SYMBOL(acpi_os_sleep);
@@ -838,8 +837,7 @@ acpi_status acpi_os_wait_semaphore(acpi_handle handle, u32 units, u16 timeout)
 
                        ret = down_trylock(sem);
                        for (i = timeout; (i > 0 && ret < 0); i -= quantum_ms) {
-                               current->state = TASK_INTERRUPTIBLE;
-                               schedule_timeout(1);
+                               schedule_timeout_interruptible(1);
                                ret = down_trylock(sem);
                        }