diff options
author | John W. Linville <linville@tuxdriver.com> | 2009-05-25 23:28:47 +0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-06-03 22:05:08 +0400 |
commit | 55aa4e0f16aa55e4b8cbe40b11e09cf029848f02 (patch) | |
tree | fbb957f66b7211e72c3776abd774eba503a590b7 /drivers/net/wireless | |
parent | 047584ce94108012288554a5f84585d792cc7f8f (diff) | |
download | linux-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.c | 5 |
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 \ |