diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-09-11 11:13:58 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-09-11 11:13:58 +0200 |
commit | 6ef62164e794c480259ac158aa6c8c7b85746545 (patch) | |
tree | c4540211d0cef9c88d96f30f89ac4b9c1a570683 /drivers/acpi/sbshc.c | |
parent | e75b986af7881ed8d8ccb1ed154045ed17cfebd0 (diff) | |
parent | adee14b2e1557d0a8559f29681732d05a89dfc35 (diff) | |
download | linux-6ef62164e794c480259ac158aa6c8c7b85746545.tar.bz2 |
Merge commit 'v2.6.27-rc6' into timers/urgent
Diffstat (limited to 'drivers/acpi/sbshc.c')
-rw-r--r-- | drivers/acpi/sbshc.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/acpi/sbshc.c b/drivers/acpi/sbshc.c index bcf2c70fca87..a4e3767b8c64 100644 --- a/drivers/acpi/sbshc.c +++ b/drivers/acpi/sbshc.c @@ -107,6 +107,13 @@ static int wait_transaction_complete(struct acpi_smb_hc *hc, int timeout) if (wait_event_timeout(hc->wait, smb_check_done(hc), msecs_to_jiffies(timeout))) return 0; + /* + * After the timeout happens, OS will try to check the status of SMbus. + * If the status is what OS expected, it will be regarded as the bogus + * timeout. + */ + if (smb_check_done(hc)) + return 0; else return -ETIME; } |