提交 ef739ab6 编写于 作者: F Felix Fietkau 提交者: John W. Linville

ath9k: set ATH_OP_INVALID before disabling hardware

Closes another small IRQ handler race
Signed-off-by: NFelix Fietkau <nbd@openwrt.org>
Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
上级 56bdbe0d
......@@ -887,6 +887,9 @@ static void ath9k_stop(struct ieee80211_hw *hw)
&sc->cur_chan->chandef);
ath9k_hw_reset(ah, ah->curchan, ah->caldata, false);
set_bit(ATH_OP_INVALID, &common->op_flags);
ath9k_hw_phy_disable(ah);
ath9k_hw_configpcipowersave(ah, true);
......@@ -895,7 +898,6 @@ static void ath9k_stop(struct ieee80211_hw *hw)
ath9k_ps_restore(sc);
set_bit(ATH_OP_INVALID, &common->op_flags);
sc->ps_idle = prev_idle;
mutex_unlock(&sc->mutex);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册