e100: free IRQ to remove warningwhenrebooting
authorAuke Kok <auke-jan.h.kok@intel.com>
Thu, 13 Dec 2007 00:30:42 +0000 (16:30 -0800)
committerJeff Garzik <jeff@garzik.org>
Fri, 14 Dec 2007 20:26:07 +0000 (15:26 -0500)
Adapted from Ian Wienand <ianw@gelato.unsw.edu.au>

Explicitly free the IRQ before removing the device to remove a
warning "Destroying IRQ without calling free_irq"

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Cc: Ian Wienand <ianw@gelato.unsw.edu.au>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/net/e100.c

index e1c8a0d..2b06e4b 100644 (file)
@@ -2737,8 +2737,9 @@ static int e100_suspend(struct pci_dev *pdev, pm_message_t state)
                pci_enable_wake(pdev, PCI_D3cold, 0);
        }
 
-       pci_disable_device(pdev);
        free_irq(pdev->irq, netdev);
+
+       pci_disable_device(pdev);
        pci_set_power_state(pdev, PCI_D3hot);
 
        return 0;
@@ -2780,6 +2781,8 @@ static void e100_shutdown(struct pci_dev *pdev)
                pci_enable_wake(pdev, PCI_D3cold, 0);
        }
 
+       free_irq(pdev->irq, netdev);
+
        pci_disable_device(pdev);
        pci_set_power_state(pdev, PCI_D3hot);
 }