Commit ef739ab6 authored by Felix Fietkau's avatar Felix Fietkau Committed by John W. Linville

ath9k: set ATH_OP_INVALID before disabling hardware

Closes another small IRQ handler race
Signed-off-by: default avatarFelix Fietkau <nbd@openwrt.org>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 56bdbe0d
...@@ -887,6 +887,9 @@ static void ath9k_stop(struct ieee80211_hw *hw) ...@@ -887,6 +887,9 @@ static void ath9k_stop(struct ieee80211_hw *hw)
&sc->cur_chan->chandef); &sc->cur_chan->chandef);
ath9k_hw_reset(ah, ah->curchan, ah->caldata, false); ath9k_hw_reset(ah, ah->curchan, ah->caldata, false);
set_bit(ATH_OP_INVALID, &common->op_flags);
ath9k_hw_phy_disable(ah); ath9k_hw_phy_disable(ah);
ath9k_hw_configpcipowersave(ah, true); ath9k_hw_configpcipowersave(ah, true);
...@@ -895,7 +898,6 @@ static void ath9k_stop(struct ieee80211_hw *hw) ...@@ -895,7 +898,6 @@ static void ath9k_stop(struct ieee80211_hw *hw)
ath9k_ps_restore(sc); ath9k_ps_restore(sc);
set_bit(ATH_OP_INVALID, &common->op_flags);
sc->ps_idle = prev_idle; sc->ps_idle = prev_idle;
mutex_unlock(&sc->mutex); mutex_unlock(&sc->mutex);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment