|
@@ -1151,10 +1151,6 @@ int ieee80211_ibss_leave(struct ieee80211_sub_if_data *sdata)
|
|
|
|
|
|
mutex_lock(&sdata->u.ibss.mtx);
|
|
|
|
|
|
- sdata->u.ibss.state = IEEE80211_IBSS_MLME_SEARCH;
|
|
|
- memset(sdata->u.ibss.bssid, 0, ETH_ALEN);
|
|
|
- sdata->u.ibss.ssid_len = 0;
|
|
|
-
|
|
|
active_ibss = ieee80211_sta_active_ibss(sdata);
|
|
|
|
|
|
if (!active_ibss && !is_zero_ether_addr(ifibss->bssid)) {
|
|
@@ -1175,6 +1171,10 @@ int ieee80211_ibss_leave(struct ieee80211_sub_if_data *sdata)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ ifibss->state = IEEE80211_IBSS_MLME_SEARCH;
|
|
|
+ memset(ifibss->bssid, 0, ETH_ALEN);
|
|
|
+ ifibss->ssid_len = 0;
|
|
|
+
|
|
|
sta_info_flush(sdata->local, sdata);
|
|
|
|
|
|
spin_lock_bh(&ifibss->incomplete_lock);
|