diff mbox series

wifi: mac80211: Unlock on error path in ieee80211_key_link()

Message ID Ywx7xR590F6lUA4l@kili (mailing list archive)
State Not Applicable
Delegated to: Johannes Berg
Headers show
Series wifi: mac80211: Unlock on error path in ieee80211_key_link() | expand

Commit Message

Dan Carpenter Aug. 29, 2022, 8:41 a.m. UTC
Unlock before returning on this error path.

Fixes: ccdde7c74ffd ("wifi: mac80211: properly implement MLO key handling")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
---
 net/mac80211/key.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Dan Carpenter Aug. 29, 2022, 8:53 a.m. UTC | #1
On Mon, Aug 29, 2022 at 11:41:41AM +0300, Dan Carpenter wrote:
> Unlock before returning on this error path.
> 

Never mind.  I see that Sun Ke already sent this.  I need to make
checking lore a standard part of my QC process instead of only for
uninitialized variable bugs...

regards,
dan carpenter
diff mbox series

Patch

diff --git a/net/mac80211/key.c b/net/mac80211/key.c
index 86aac87e0211..d89ec93b243b 100644
--- a/net/mac80211/key.c
+++ b/net/mac80211/key.c
@@ -865,8 +865,10 @@  int ieee80211_key_link(struct ieee80211_key *key,
 		if (link_id >= 0) {
 			link_sta = rcu_dereference_protected(sta->link[link_id],
 							     lockdep_is_held(&sta->local->sta_mtx));
-			if (!link_sta)
-				return -ENOLINK;
+			if (!link_sta) {
+				ret = -ENOLINK;
+				goto out;
+			}
 		}
 
 		old_key = key_mtx_dereference(sdata->local, link_sta->gtk[idx]);