From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeff Kirsher Subject: [NET-NEXT PATCH 09/25] ixgb: fix unload race with timers Date: Tue, 08 Jul 2008 15:51:47 -0700 Message-ID: <20080708225147.6925.75570.stgit@localhost.localdomain> References: <20080708224858.6925.29725.stgit@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Cc: netdev@vger.kernel.org, davem@davemloft.net, Jesse Brandeburg , Jeff Kirsher To: jeff@garzik.org Return-path: Received: from mga02.intel.com ([134.134.136.20]:6060 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753583AbYGHWvt (ORCPT ); Tue, 8 Jul 2008 18:51:49 -0400 In-Reply-To: <20080708224858.6925.29725.stgit@localhost.localdomain> Sender: netdev-owner@vger.kernel.org List-ID: From: Jesse Brandeburg ixgb needs to call flush scheduled work to flush any timers before unregistering the netdev. Signed-off-by: Jesse Brandeburg Signed-off-by: Jeff Kirsher --- drivers/net/ixgb/ixgb_main.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c index c3234c4..79082eb 100644 --- a/drivers/net/ixgb/ixgb_main.c +++ b/drivers/net/ixgb/ixgb_main.c @@ -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);