diff --git a/devices/e1000/e1000_main-2.6.29-ethercat.c b/devices/e1000/e1000_main-2.6.29-ethercat.c index f6ab3fa1..86e02139 100755 --- a/devices/e1000/e1000_main-2.6.29-ethercat.c +++ b/devices/e1000/e1000_main-2.6.29-ethercat.c @@ -3766,7 +3766,7 @@ static irqreturn_t e1000_intr_msi(int irq, void *data) int i, ec_work_done = 0; for (i = 0; i < E1000_MAX_INTR; i++) { if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring, - &ec_work_done, 100) & + &ec_work_done, 100) && !e1000_clean_tx_irq(adapter, adapter->tx_ring))) { break; } @@ -3850,7 +3850,7 @@ static irqreturn_t e1000_intr(int irq, void *data) int i, ec_work_done = 0; for (i = 0; i < E1000_MAX_INTR; i++) { if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring, - &ec_work_done, 100) & + &ec_work_done, 100) && !e1000_clean_tx_irq(adapter, adapter->tx_ring))) { break; } diff --git a/devices/e1000/e1000_main-2.6.31-ethercat.c b/devices/e1000/e1000_main-2.6.31-ethercat.c index 2a19e67c..78034ba8 100644 --- a/devices/e1000/e1000_main-2.6.31-ethercat.c +++ b/devices/e1000/e1000_main-2.6.31-ethercat.c @@ -3804,7 +3804,7 @@ static irqreturn_t e1000_intr_msi(int irq, void *data) int i, ec_work_done = 0; for (i = 0; i < E1000_MAX_INTR; i++) { if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring, - &ec_work_done, 100) & + &ec_work_done, 100) && !e1000_clean_tx_irq(adapter, adapter->tx_ring))) { break; } diff --git a/devices/e1000/e1000_main-2.6.33-ethercat.c b/devices/e1000/e1000_main-2.6.33-ethercat.c index b56e9d85..7c41b7ca 100644 --- a/devices/e1000/e1000_main-2.6.33-ethercat.c +++ b/devices/e1000/e1000_main-2.6.33-ethercat.c @@ -3468,7 +3468,7 @@ static irqreturn_t e1000_intr(int irq, void *data) int i, ec_work_done = 0; for (i = 0; i < E1000_MAX_INTR; i++) { if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring, - &ec_work_done, 100) & + &ec_work_done, 100) && !e1000_clean_tx_irq(adapter, adapter->tx_ring))) { break; }