commit d552bfb65241a35d48e44ddb0d27e0454f579ab4
Author: Kolekar, Abhijeet <abhijeet.kole...@intel.com>
Date:   Fri Dec 19 10:37:41 2008 +0800

    iwl3945: release resources before shutting down

    Release resource before shutting down and notify upper stack.

    Signed-off-by: Abhijeet Kolekar <abhijeet.kole...@intel.com>
    Signed-off-by: Zhu Yi <yi....@intel.com>
    Signed-off-by: John W. Linville <linvi...@tuxdriver.com>
---
 drivers/net/wireless/iwlwifi/iwl3945-base.c |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/net/wireless/iwlwifi/iwl3945-base.c 
b/drivers/net/wireless/iwlwifi/iwl3945-base.c
index 22e7e99..8cb0fa2 100644
--- a/drivers/net/wireless/iwlwifi/iwl3945-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c
@@ -8096,7 +8096,12 @@ static void __devexit iwl3945_pci_remove(struct pci_dev 
*pdev)
 
        set_bit(STATUS_EXIT_PENDING, &priv->status);
 
-       iwl3945_down(priv);
+       if (priv->mac80211_registered) {
+               ieee80211_unregister_hw(priv->hw);
+               priv->mac80211_registered = 0;
+       } else {
+               iwl3945_down(priv);
+       }
 
        /* make sure we flush any pending irq or
         * tasklet for the driver
@@ -8121,9 +8126,6 @@ static void __devexit iwl3945_pci_remove(struct pci_dev 
*pdev)
        iwl3945_unset_hw_setting(priv);
        iwl3945_clear_stations_table(priv);
 
-       if (priv->mac80211_registered)
-               ieee80211_unregister_hw(priv->hw);
-
        /*netif_stop_queue(dev); */
        flush_workqueue(priv->workqueue);
 
-- 
1.6.2.5

_______________________________________________
Fedora-kernel-list mailing list
Fedora-kernel-list@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-kernel-list

Reply via email to