cfg80211: remove warning in deauth case
authorHolger Schurig <hs4233@mail.mn-solutions.de>
Tue, 13 Oct 2009 11:45:28 +0000 (13:45 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 27 Oct 2009 20:48:17 +0000 (16:48 -0400)
It might be the case that __cfg80211_disconnected() has already
cleaned up wdev->current_bss() for us. The old code didn't catch
that situation and didn't warn needlessly.

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/wireless/mlme.c

index a13a71205240278e01abd7999cabe609941f2cda..1f87b4e7f4f77b3e83e2e83111b2532ad707322f 100644 (file)
@@ -130,7 +130,6 @@ void __cfg80211_send_deauth(struct net_device *dev,
        struct ieee80211_mgmt *mgmt = (struct ieee80211_mgmt *)buf;
        const u8 *bssid = mgmt->bssid;
        int i;
-       bool done = false;
 
        ASSERT_WDEV_LOCK(wdev);
 
@@ -138,7 +137,6 @@ void __cfg80211_send_deauth(struct net_device *dev,
 
        if (wdev->current_bss &&
            memcmp(wdev->current_bss->pub.bssid, bssid, ETH_ALEN) == 0) {
-               done = true;
                cfg80211_unhold_bss(wdev->current_bss);
                cfg80211_put_bss(&wdev->current_bss->pub);
                wdev->current_bss = NULL;
@@ -148,7 +146,6 @@ void __cfg80211_send_deauth(struct net_device *dev,
                        cfg80211_unhold_bss(wdev->auth_bsses[i]);
                        cfg80211_put_bss(&wdev->auth_bsses[i]->pub);
                        wdev->auth_bsses[i] = NULL;
-                       done = true;
                        break;
                }
                if (wdev->authtry_bsses[i] &&
@@ -156,13 +153,10 @@ void __cfg80211_send_deauth(struct net_device *dev,
                        cfg80211_unhold_bss(wdev->authtry_bsses[i]);
                        cfg80211_put_bss(&wdev->authtry_bsses[i]->pub);
                        wdev->authtry_bsses[i] = NULL;
-                       done = true;
                        break;
                }
        }
 
-       WARN_ON(!done);
-
        if (wdev->sme_state == CFG80211_SME_CONNECTED) {
                u16 reason_code;
                bool from_ap;