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 <aabdulla@nvidia.com>

Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
Ayaz Abdulla 2007-03-23 05:50:02 -05:00 коммит произвёл Jeff Garzik
Родитель fcc5f2665c
Коммит 3ba4d093fe
1 изменённых файлов: 2 добавлений и 1 удалений

Просмотреть файл

@ -2050,9 +2050,10 @@ static void nv_tx_timeout(struct net_device *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);