diff mbox series

[05/11] wifi: iwlwifi: mvm: unlock mvm if there is no primary link

Message ID 20240218194912.21de6e68d9e5.I3c0ebe577dec6b26ab6b4eac48035d6f35a8b0f8@changeid (mailing list archive)
State Accepted
Delegated to: Johannes Berg
Headers show
Series wifi: iwlwifi: updates - 2024-02-18 | expand

Commit Message

Korenblit, Miriam Rachel Feb. 18, 2024, 5:51 p.m. UTC
From: Benjamin Berg <benjamin.berg@intel.com>

At that point in the code mvm->mutex has already been taken, so jump to
out_noreset in order to unlock before returning the error.

Fixes: 8c9bef26e98b ("wifi: iwlwifi: mvm: d3: implement suspend with MLO")
Signed-off-by: Benjamin Berg <benjamin.berg@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
---
 drivers/net/wireless/intel/iwlwifi/mvm/d3.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/d3.c b/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
index 9830a3c3600b..6d5ed79b9fff 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
@@ -1290,8 +1290,10 @@  static int __iwl_mvm_suspend(struct ieee80211_hw *hw,
 	mvmvif = iwl_mvm_vif_from_mac80211(vif);
 
 	mvm_link = mvmvif->link[primary_link];
-	if (WARN_ON_ONCE(!mvm_link))
-		return -EINVAL;
+	if (WARN_ON_ONCE(!mvm_link)) {
+		ret = -EINVAL;
+		goto out_noreset;
+	}
 
 	if (mvm_link->ap_sta_id == IWL_MVM_INVALID_STA) {
 		/* if we're not associated, this must be netdetect */