diff options
author | Kalle Valo <kvalo@qca.qualcomm.com> | 2014-02-13 11:13:12 -0500 |
---|---|---|
committer | Kalle Valo <kvalo@qca.qualcomm.com> | 2014-02-14 06:20:45 -0500 |
commit | 75459e3338928bdbe9618b626a6471764e2e53f0 (patch) | |
tree | 7f18a215042ae156abea04e1281f8d52e4a0f7ae /drivers/net/wireless | |
parent | ef8c00174a8738ea334197c0164143354644cb16 (diff) |
ath10k: release conf_mutex if vdev_start() fails
I modified Michal's commit c930f744bdb0 ("ath10k: implement channel switching") to return
when vdev_start() fails, but forgot to release conf_mutex.
Found by coccinelle:
>> drivers/net/wireless/ath/ath10k/mac.c:2745:5-11: preceding lock on line 2663
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r-- | drivers/net/wireless/ath/ath10k/mac.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c index 5c5860ef36bd..44b550b2fcfd 100644 --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c | |||
@@ -2785,7 +2785,7 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw, | |||
2785 | if (ret) { | 2785 | if (ret) { |
2786 | ath10k_warn("failed to start vdev: %d\n", | 2786 | ath10k_warn("failed to start vdev: %d\n", |
2787 | ret); | 2787 | ret); |
2788 | return; | 2788 | goto exit; |
2789 | } | 2789 | } |
2790 | 2790 | ||
2791 | arvif->is_started = true; | 2791 | arvif->is_started = true; |
@@ -2866,6 +2866,7 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw, | |||
2866 | ath10k_bss_assoc(hw, vif, info); | 2866 | ath10k_bss_assoc(hw, vif, info); |
2867 | } | 2867 | } |
2868 | 2868 | ||
2869 | exit: | ||
2869 | mutex_unlock(&ar->conf_mutex); | 2870 | mutex_unlock(&ar->conf_mutex); |
2870 | } | 2871 | } |
2871 | 2872 | ||