Commit 782d2673 authored by Johannes Berg's avatar Johannes Berg

mac80211: remove redundant check

There's no need to have two checks for "associated"
in ieee80211_sta_restart(), make the first one locked
to not race (unlikely at this point during resume)
and remove the second check.
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 683d41ae
...@@ -3156,15 +3156,15 @@ void ieee80211_sta_restart(struct ieee80211_sub_if_data *sdata) ...@@ -3156,15 +3156,15 @@ void ieee80211_sta_restart(struct ieee80211_sub_if_data *sdata)
{ {
struct ieee80211_if_managed *ifmgd = &sdata->u.mgd; struct ieee80211_if_managed *ifmgd = &sdata->u.mgd;
if (!ifmgd->associated) mutex_lock(&ifmgd->mtx);
if (!ifmgd->associated) {
mutex_unlock(&ifmgd->mtx);
return; return;
}
if (sdata->flags & IEEE80211_SDATA_DISCONNECT_RESUME) { if (sdata->flags & IEEE80211_SDATA_DISCONNECT_RESUME) {
sdata->flags &= ~IEEE80211_SDATA_DISCONNECT_RESUME; sdata->flags &= ~IEEE80211_SDATA_DISCONNECT_RESUME;
mutex_lock(&ifmgd->mtx); mlme_dbg(sdata, "driver requested disconnect after resume\n");
if (ifmgd->associated) {
mlme_dbg(sdata,
"driver requested disconnect after resume\n");
ieee80211_sta_connection_lost(sdata, ieee80211_sta_connection_lost(sdata,
ifmgd->associated->bssid, ifmgd->associated->bssid,
WLAN_REASON_UNSPECIFIED); WLAN_REASON_UNSPECIFIED);
...@@ -3172,7 +3172,6 @@ void ieee80211_sta_restart(struct ieee80211_sub_if_data *sdata) ...@@ -3172,7 +3172,6 @@ void ieee80211_sta_restart(struct ieee80211_sub_if_data *sdata)
return; return;
} }
mutex_unlock(&ifmgd->mtx); mutex_unlock(&ifmgd->mtx);
}
if (test_and_clear_bit(TMR_RUNNING_TIMER, &ifmgd->timers_running)) if (test_and_clear_bit(TMR_RUNNING_TIMER, &ifmgd->timers_running))
add_timer(&ifmgd->timer); add_timer(&ifmgd->timer);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment