summaryrefslogtreecommitdiff
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorJohn W. Linville <linville@tuxdriver.com>2009-05-25 23:28:47 +0400
committerJohn W. Linville <linville@tuxdriver.com>2009-06-03 22:05:08 +0400
commit55aa4e0f16aa55e4b8cbe40b11e09cf029848f02 (patch)
treefbb957f66b7211e72c3776abd774eba503a590b7 /drivers/net/wireless
parent047584ce94108012288554a5f84585d792cc7f8f (diff)
downloadlinux-55aa4e0f16aa55e4b8cbe40b11e09cf029848f02.tar.xz
ath5k: avoid leaking mutex in ath5k_config
Reported-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/ath/ath5k/base.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/ath5k/base.c b/drivers/net/wireless/ath/ath5k/base.c
index fb5193764afa..dd6dc8dc740b 100644
--- a/drivers/net/wireless/ath/ath5k/base.c
+++ b/drivers/net/wireless/ath/ath5k/base.c
@@ -2779,7 +2779,7 @@ ath5k_config(struct ieee80211_hw *hw, u32 changed)
ret = ath5k_chan_set(sc, conf->channel);
if (ret < 0)
- return ret;
+ goto unlock;
if ((changed & IEEE80211_CONF_CHANGE_POWER) &&
(sc->power_level != conf->power_level)) {
@@ -2808,8 +2808,9 @@ ath5k_config(struct ieee80211_hw *hw, u32 changed)
*/
ath5k_hw_set_antenna_mode(ah, AR5K_ANTMODE_DEFAULT);
+unlock:
mutex_unlock(&sc->lock);
- return 0;
+ return ret;
}
#define SUPPORTED_FIF_FLAGS \