# HG changeset patch # User Florian Pose # Date 1326101316 -3600 # Node ID 89f44eee4d550b8b2ebab2dd3f218d977f25ea34 # Parent f51f3a98d7603f55b24b8fa1c0a75138defc13f2 Fixed e1000 link detection race. diff -r f51f3a98d760 -r 89f44eee4d55 devices/e1000/e1000_main-2.6.33-ethercat.c --- a/devices/e1000/e1000_main-2.6.33-ethercat.c Mon Jan 09 10:23:40 2012 +0100 +++ b/devices/e1000/e1000_main-2.6.33-ethercat.c Mon Jan 09 10:28:36 2012 +0100 @@ -3457,10 +3457,10 @@ if (unlikely((!icr) || test_bit(__E1000_DOWN, &adapter->flags))) return IRQ_NONE; /* Not our interrupt */ - if (!adapter->ecdev && unlikely(icr & (E1000_ICR_RXSEQ | E1000_ICR_LSC))) { + if (unlikely(icr & (E1000_ICR_RXSEQ | E1000_ICR_LSC))) { hw->get_link_status = 1; /* guard against interrupt when we're going down */ - if (!test_bit(__E1000_DOWN, &adapter->flags)) + if (!adapter->ecdev && !test_bit(__E1000_DOWN, &adapter->flags)) mod_timer(&adapter->watchdog_timer, jiffies + 1); }