mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-18 09:44:18 +08:00
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>
This commit is contained in:
parent
d8a8dd8f07
commit
d1844d7769
@ -3025,9 +3025,6 @@ static void mwl8k_bss_info_changed(struct ieee80211_hw *hw,
|
||||
struct mwl8k_vif *mwl8k_vif = MWL8K_VIF(vif);
|
||||
int rc;
|
||||
|
||||
if (changed & BSS_CHANGED_BSSID)
|
||||
memcpy(mwl8k_vif->bssid, info->bssid, ETH_ALEN);
|
||||
|
||||
if ((changed & BSS_CHANGED_ASSOC) == 0)
|
||||
return;
|
||||
|
||||
@ -3041,6 +3038,8 @@ static void mwl8k_bss_info_changed(struct ieee80211_hw *hw,
|
||||
memcpy(&mwl8k_vif->bss_info, info,
|
||||
sizeof(struct ieee80211_bss_conf));
|
||||
|
||||
memcpy(mwl8k_vif->bssid, info->bssid, ETH_ALEN);
|
||||
|
||||
/* Install rates */
|
||||
rc = mwl8k_update_rateset(hw, vif);
|
||||
if (rc)
|
||||
|
Loading…
Reference in New Issue
Block a user