diff options
author | David S. Miller <davem@davemloft.net> | 2008-12-02 19:50:27 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-12-02 19:50:27 -0800 |
commit | aa2ba5f1082dc705745899584aac8416d710c056 (patch) | |
tree | bde0bf4aff036c6bac19a0212194ae1092afb3c9 /drivers/usb/host/ehci.h | |
parent | 68024541e2e5a8f35e281daaa5068a29e2a538a5 (diff) | |
parent | f6f7b52e2f6149d2ee365717afff315b05720162 (diff) | |
download | linux-aa2ba5f1082dc705745899584aac8416d710c056.tar.gz linux-aa2ba5f1082dc705745899584aac8416d710c056.tar.bz2 linux-aa2ba5f1082dc705745899584aac8416d710c056.zip |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts:
drivers/net/ixgbe/ixgbe_main.c
drivers/net/smc91x.c
Diffstat (limited to 'drivers/usb/host/ehci.h')
-rw-r--r-- | drivers/usb/host/ehci.h | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/usb/host/ehci.h b/drivers/usb/host/ehci.h index b11798d17ae5..c7d4b5a06bdb 100644 --- a/drivers/usb/host/ehci.h +++ b/drivers/usb/host/ehci.h @@ -183,16 +183,14 @@ timer_action (struct ehci_hcd *ehci, enum ehci_timer_action action) * the async ring; just the I/O watchdog. Note that if a * SHRINK were pending, OFF would never be requested. */ - enum ehci_timer_action oldactions = ehci->actions; + if (timer_pending(&ehci->watchdog) + && ((BIT(TIMER_ASYNC_SHRINK) | BIT(TIMER_ASYNC_OFF)) + & ehci->actions)) + return; if (!test_and_set_bit (action, &ehci->actions)) { unsigned long t; - if (timer_pending(&ehci->watchdog) - && ((BIT(TIMER_ASYNC_SHRINK) | BIT(TIMER_ASYNC_OFF)) - & oldactions)) - return; - switch (action) { case TIMER_IO_WATCHDOG: t = EHCI_IO_JIFFIES; @@ -208,7 +206,7 @@ timer_action (struct ehci_hcd *ehci, enum ehci_timer_action action) t = DIV_ROUND_UP(EHCI_SHRINK_FRAMES * HZ, 1000) + 1; break; } - mod_timer(&ehci->watchdog, round_jiffies(t + jiffies)); + mod_timer(&ehci->watchdog, t + jiffies); } } |