summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/intel
diff options
context:
space:
mode:
authorBenjamin Berg <benjamin.berg@intel.com>2024-02-18 20:51:46 +0300
committerJohannes Berg <johannes.berg@intel.com>2024-02-21 17:19:04 +0300
commite2967e83921a3748116b8e330cbbb794817ceee8 (patch)
tree962b742f39f259ac6462106ad76c64a426e13b75 /drivers/net/wireless/intel
parent653a90f6b226d8f95d06cb6c0bf5473f99582cc9 (diff)
downloadlinux-e2967e83921a3748116b8e330cbbb794817ceee8.tar.xz
wifi: iwlwifi: mvm: unlock mvm if there is no primary link
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> Link: https://msgid.link/20240218194912.21de6e68d9e5.I3c0ebe577dec6b26ab6b4eac48035d6f35a8b0f8@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel')
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/d3.c6
1 files changed, 4 insertions, 2 deletions
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 */