[patch 09/10] forcedeth: fix tx timeout
From: akpm@linux-foundation.org
Date: 2007-03-27 05:47:32
From: Ayaz Abdulla <redacted> The tx timeout routine was waking the tx queue conditionally. However, it must call it unconditionally since the dev_watchdog has halted the tx queue before calling the timeout function. Signed-off-by: Ayaz Abdulla <redacted> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> --- drivers/net/forcedeth.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff -puN drivers/net/forcedeth.c~forcedeth-fix-tx-timeout drivers/net/forcedeth.c
--- a/drivers/net/forcedeth.c~forcedeth-fix-tx-timeout
+++ a/drivers/net/forcedeth.c@@ -2050,9 +2050,10 @@ static void nv_tx_timeout(struct net_dev nv_drain_tx(dev); nv_init_tx(dev); setup_hw_rings(dev, NV_SETUP_TX_RING); - netif_wake_queue(dev); } + netif_wake_queue(dev); + /* 4) restart tx engine */ nv_start_tx(dev); spin_unlock_irq(&np->lock);
_