diff options
author | Johannes Berg <johannes.berg@intel.com> | 2012-12-13 17:49:02 -0500 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-01-03 07:01:17 -0500 |
commit | 051007d9e281cd8ea603a4cc4c96b0170b26c7e9 (patch) | |
tree | 3c7b62d4290774d41b24562537d781847a6c5b36 /net/mac80211/mlme.c | |
parent | 09f4114e02aac9cbf40553a17580b07ab29715d8 (diff) |
mac80211: optimise roaming time again
The last fixes re-added the RCU synchronize penalty
on roaming to fix the races. Split up sta_info_flush()
now to get rid of that again, and let managed mode
(and only it) delay the actual destruction.
Tested-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/mlme.c')
-rw-r--r-- | net/mac80211/mlme.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 6d61d2f88716..3cf85d8629a7 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -1521,7 +1521,7 @@ static void ieee80211_set_disassoc(struct ieee80211_sub_if_data *sdata, | |||
1521 | memset(ifmgd->bssid, 0, ETH_ALEN); | 1521 | memset(ifmgd->bssid, 0, ETH_ALEN); |
1522 | 1522 | ||
1523 | /* remove AP and TDLS peers */ | 1523 | /* remove AP and TDLS peers */ |
1524 | sta_info_flush(sdata); | 1524 | sta_info_flush_defer(sdata); |
1525 | 1525 | ||
1526 | /* finally reset all BSS / config parameters */ | 1526 | /* finally reset all BSS / config parameters */ |
1527 | changed |= ieee80211_reset_erp_info(sdata); | 1527 | changed |= ieee80211_reset_erp_info(sdata); |