aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/mlme.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/mac80211/mlme.c')
-rw-r--r--net/mac80211/mlme.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index 0abd5a4fe38d..a03245255ed0 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -2872,15 +2872,18 @@ static void ieee80211_rx_mgmt_beacon(struct ieee80211_sub_if_data *sdata,
2872 memcmp(ifsta->bssid, mgmt->bssid, ETH_ALEN) != 0) 2872 memcmp(ifsta->bssid, mgmt->bssid, ETH_ALEN) != 0)
2873 return; 2873 return;
2874 2874
2875 ieee80211_sta_wmm_params(local, ifsta, elems.wmm_param,
2876 elems.wmm_param_len);
2877
2878 /* Do not send changes to driver if we are scanning. This removes 2875 /* Do not send changes to driver if we are scanning. This removes
2879 * requirement that driver's bss_info_changed function needs to be 2876 * requirement that a driver's bss_info_changed/conf_tx functions
2880 * atomic. */ 2877 * need to be atomic.
2878 * This is really ugly code, we should rewrite scanning and make
2879 * all this more understandable for humans.
2880 */
2881 if (local->sta_sw_scanning || local->sta_hw_scanning) 2881 if (local->sta_sw_scanning || local->sta_hw_scanning)
2882 return; 2882 return;
2883 2883
2884 ieee80211_sta_wmm_params(local, ifsta, elems.wmm_param,
2885 elems.wmm_param_len);
2886
2884 if (elems.erp_info && elems.erp_info_len >= 1) 2887 if (elems.erp_info && elems.erp_info_len >= 1)
2885 changed |= ieee80211_handle_erp_ie(sdata, elems.erp_info[0]); 2888 changed |= ieee80211_handle_erp_ie(sdata, elems.erp_info[0]);
2886 else { 2889 else {