diff options
author | Yu Luming <luming.yu@intel.com> | 2005-12-31 01:45:00 -0500 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2006-01-03 16:27:21 -0500 |
commit | dacd9b80355525be0e3c519687868410e304ad1c (patch) | |
tree | f0c897a51437c0e9b7d8d80874dd6a63f14b83f0 /drivers/acpi/osl.c | |
parent | 88026842b0a760145aa71d69e74fbc9ec118ca44 (diff) |
[ACPI] fix acpi_os_wait_sempahore() finite timeout case (AE_TIME warning)
Before this fix, the finite timeout case
behaved like the no-timeout (trylock) case.
http://bugzilla.kernel.org/show_bug.cgi?id=4588
Signed-off-by: Luming Yu <luming.yu@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/osl.c')
-rw-r--r-- | drivers/acpi/osl.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c index e3cd0b16031a..8653dac01a76 100644 --- a/drivers/acpi/osl.c +++ b/drivers/acpi/osl.c | |||
@@ -836,7 +836,7 @@ acpi_status acpi_os_wait_semaphore(acpi_handle handle, u32 units, u16 timeout) | |||
836 | static const int quantum_ms = 1000 / HZ; | 836 | static const int quantum_ms = 1000 / HZ; |
837 | 837 | ||
838 | ret = down_trylock(sem); | 838 | ret = down_trylock(sem); |
839 | for (i = timeout; (i > 0 && ret < 0); i -= quantum_ms) { | 839 | for (i = timeout; (i > 0 && ret != 0); i -= quantum_ms) { |
840 | schedule_timeout_interruptible(1); | 840 | schedule_timeout_interruptible(1); |
841 | ret = down_trylock(sem); | 841 | ret = down_trylock(sem); |
842 | } | 842 | } |