ixgb: fix unload race with timers
authorJesse Brandeburg <[email protected]>
Tue, 8 Jul 2008 22:51:47 +0000 (15:51 -0700)
committerJeff Garzik <[email protected]>
Fri, 11 Jul 2008 05:20:28 +0000 (01:20 -0400)
ixgb needs to call flush scheduled work to flush any timers before
unregistering the netdev.

Signed-off-by: Jesse Brandeburg <[email protected]>
Signed-off-by: Jeff Kirsher <[email protected]>
Signed-off-by: Jeff Garzik <[email protected]>
drivers/net/ixgb/ixgb_main.c

index c3234c45104381fd23fc627ceb149253a24c22ce..79082eb577c6757b1cbbd2fff35018fc15b1adaa 100644 (file)
@@ -528,6 +528,8 @@ ixgb_remove(struct pci_dev *pdev)
        struct net_device *netdev = pci_get_drvdata(pdev);
        struct ixgb_adapter *adapter = netdev_priv(netdev);
 
+       flush_scheduled_work();
+
        unregister_netdev(netdev);
 
        iounmap(adapter->hw.hw_addr);