| From 0daa63ed4c6c4302790ce67b7a90c0997ceb7514 Mon Sep 17 00:00:00 2001 |
| From: Andrei Otcheretianski <andrei.otcheretianski@intel.com> |
| Date: Fri, 21 Feb 2020 10:47:20 +0100 |
| Subject: mac80211: Remove a redundant mutex unlock |
| |
| From: Andrei Otcheretianski <andrei.otcheretianski@intel.com> |
| |
| commit 0daa63ed4c6c4302790ce67b7a90c0997ceb7514 upstream. |
| |
| The below-mentioned commit changed the code to unlock *inside* |
| the function, but previously the unlock was *outside*. It failed |
| to remove the outer unlock, however, leading to double unlock. |
| |
| Fix this. |
| |
| Fixes: 33483a6b88e4 ("mac80211: fix missing unlock on error in ieee80211_mark_sta_auth()") |
| Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com> |
| Link: https://lore.kernel.org/r/20200221104719.cce4741cf6eb.I671567b185c8a4c2409377e483fd149ce590f56d@changeid |
| [rewrite commit message to better explain what happened] |
| Signed-off-by: Johannes Berg <johannes.berg@intel.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| net/mac80211/mlme.c | 6 +----- |
| 1 file changed, 1 insertion(+), 5 deletions(-) |
| |
| --- a/net/mac80211/mlme.c |
| +++ b/net/mac80211/mlme.c |
| @@ -2959,7 +2959,7 @@ static void ieee80211_rx_mgmt_auth(struc |
| (auth_transaction == 2 && |
| ifmgd->auth_data->expected_transaction == 2)) { |
| if (!ieee80211_mark_sta_auth(sdata, bssid)) |
| - goto out_err; |
| + return; /* ignore frame -- wait for timeout */ |
| } else if (ifmgd->auth_data->algorithm == WLAN_AUTH_SAE && |
| auth_transaction == 2) { |
| sdata_info(sdata, "SAE peer confirmed\n"); |
| @@ -2967,10 +2967,6 @@ static void ieee80211_rx_mgmt_auth(struc |
| } |
| |
| cfg80211_rx_mlme_mgmt(sdata->dev, (u8 *)mgmt, len); |
| - return; |
| - out_err: |
| - mutex_unlock(&sdata->local->sta_mtx); |
| - /* ignore frame -- wait for timeout */ |
| } |
| |
| #define case_WLAN(type) \ |