Commit 9d139c810a2aa17365cc548d0cd2a189d8433c65 introduced AA deadlock -- ath5k_config_interface(); holds sc->lock and it calls ath5k_beacon_update(); which tries to grab the lock again.
Don't grab the lock in beacon update, since only caller is config iface for now. Signed-off-by: Jiri Slaby <[EMAIL PROTECTED]> Cc: Johannes Berg <[EMAIL PROTECTED]> Cc: John W. Linville <[EMAIL PROTECTED]> Cc: Nick Kossifidis <[EMAIL PROTECTED]> Cc: Luis R. Rodriguez <[EMAIL PROTECTED]> --- drivers/net/wireless/ath5k/base.c | 4 ---- 1 files changed, 0 insertions(+), 4 deletions(-) diff --git a/drivers/net/wireless/ath5k/base.c b/drivers/net/wireless/ath5k/base.c index 7273e9f..898a969 100644 --- a/drivers/net/wireless/ath5k/base.c +++ b/drivers/net/wireless/ath5k/base.c @@ -3065,8 +3065,6 @@ ath5k_beacon_update(struct ieee80211_hw *hw, struct sk_buff *skb) ath5k_debug_dump_skb(sc, skb, "BC ", 1); - mutex_lock(&sc->lock); - if (sc->opmode != IEEE80211_IF_TYPE_IBSS) { ret = -EIO; goto end; @@ -3081,9 +3079,7 @@ ath5k_beacon_update(struct ieee80211_hw *hw, struct sk_buff *skb) ath5k_beacon_config(sc); mmiowb(); } - end: - mutex_unlock(&sc->lock); return ret; } -- 1.5.6.2 _______________________________________________ ath5k-devel mailing list ath5k-devel@lists.ath5k.org https://lists.ath5k.org/mailman/listinfo/ath5k-devel