aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorLennert Buytenhek <buytenh@wantstofly.org>2009-11-30 12:13:56 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-12-07 16:51:22 -0500
commitd1844d77692de3158ad458ed4c7b86d78ab4085e (patch)
tree940924641f8e2a48e454feb47c826c81ba3aac64 /drivers
parentd8a8dd8f07aed82492c089ad13fd3d7476b692fd (diff)
mwl8k: don't overwrite mwl8k_vif::bssid until after disassociation
When disassociating, mac80211 zeroes vif->bss_info.bssid before calling our ->bss_info_changed(), but we need the BSSID to remove the hardware station database entry for our AP, so we can't clear our local copy of the BSSID until after we've done that. Signed-off-by: Lennert Buytenhek <buytenh@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/mwl8k.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/net/wireless/mwl8k.c b/drivers/net/wireless/mwl8k.c
index 2e9da9aa38e7..ea1173fd598c 100644
--- a/drivers/net/wireless/mwl8k.c
+++ b/drivers/net/wireless/mwl8k.c
@@ -3025,9 +3025,6 @@ static void mwl8k_bss_info_changed(struct ieee80211_hw *hw,
3025 struct mwl8k_vif *mwl8k_vif = MWL8K_VIF(vif); 3025 struct mwl8k_vif *mwl8k_vif = MWL8K_VIF(vif);
3026 int rc; 3026 int rc;
3027 3027
3028 if (changed & BSS_CHANGED_BSSID)
3029 memcpy(mwl8k_vif->bssid, info->bssid, ETH_ALEN);
3030
3031 if ((changed & BSS_CHANGED_ASSOC) == 0) 3028 if ((changed & BSS_CHANGED_ASSOC) == 0)
3032 return; 3029 return;
3033 3030
@@ -3041,6 +3038,8 @@ static void mwl8k_bss_info_changed(struct ieee80211_hw *hw,
3041 memcpy(&mwl8k_vif->bss_info, info, 3038 memcpy(&mwl8k_vif->bss_info, info,
3042 sizeof(struct ieee80211_bss_conf)); 3039 sizeof(struct ieee80211_bss_conf));
3043 3040
3041 memcpy(mwl8k_vif->bssid, info->bssid, ETH_ALEN);
3042
3044 /* Install rates */ 3043 /* Install rates */
3045 rc = mwl8k_update_rateset(hw, vif); 3044 rc = mwl8k_update_rateset(hw, vif);
3046 if (rc) 3045 if (rc)