Commit 2c3634a8 authored by Sujith Manoharan's avatar Sujith Manoharan Committed by John W. Linville

ath9k: Handle failure to send NoA

If for some reason a beacon with a new NoA is
not sent out, then reset the mgd_prepare_tx flag.
Not doing this will result in a situation where
a GO will send a new NoA when it shouldn't.
Signed-off-by: default avatarSujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 6185672a
...@@ -2501,10 +2501,17 @@ static void ath9k_mgd_prepare_tx(struct ieee80211_hw *hw, ...@@ -2501,10 +2501,17 @@ static void ath9k_mgd_prepare_tx(struct ieee80211_hw *hw,
init_completion(&sc->go_beacon); init_completion(&sc->go_beacon);
mutex_unlock(&sc->mutex); mutex_unlock(&sc->mutex);
if (wait_for_completion_timeout(&sc->go_beacon, if (wait_for_completion_timeout(&sc->go_beacon,
timeout) == 0) timeout) == 0) {
ath_dbg(common, CHAN_CTX, ath_dbg(common, CHAN_CTX,
"Failed to send new NoA\n"); "Failed to send new NoA\n");
spin_lock_bh(&sc->chan_lock);
sc->sched.mgd_prepare_tx = false;
spin_unlock_bh(&sc->chan_lock);
}
mutex_lock(&sc->mutex); mutex_lock(&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