Commit 65493f27 authored by Bart Van Assche's avatar Bart Van Assche Committed by Johannes Berg
Browse files

wifi: cw1200: Revert "Fix locking in error paths"



Revert commit d98c2461 ("wifi: cw1200: Fix locking in error paths")
because it introduces a locking bug instead of fixing a locking bug.
cw1200_wow_resume() unlocks priv->conf_mutex. Hence, adding
mutex_unlock(&priv->conf_mutex) just after cw1200_wow_resume() is wrong.

Reported-by: default avatarBen Hutchings <ben@decadent.org.uk>
Closes: https://lore.kernel.org/all/408661f69f263266b028713e1412ba36d457e63d.camel@decadent.org.uk/


Fixes: d98c2461 ("wifi: cw1200: Fix locking in error paths")
Signed-off-by: default avatarBart Van Assche <bvanassche@acm.org>
Link: https://patch.msgid.link/20260430174418.1845431-1-bvanassche@acm.org


Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 0cfff13c
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -264,14 +264,12 @@ int cw1200_wow_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
		wiphy_err(priv->hw->wiphy,
			  "PM request failed: %d. WoW is disabled.\n", ret);
		cw1200_wow_resume(hw);
		mutex_unlock(&priv->conf_mutex);
		return -EBUSY;
	}

	/* Force resume if event is coming from the device. */
	if (atomic_read(&priv->bh_rx)) {
		cw1200_wow_resume(hw);
		mutex_unlock(&priv->conf_mutex);
		return -EAGAIN;
	}