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: Sujith Manoharan <c_manoha@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
6185672aba
commit
2c3634a8d4
@ -2501,10 +2501,17 @@ static void ath9k_mgd_prepare_tx(struct ieee80211_hw *hw,
|
||||
init_completion(&sc->go_beacon);
|
||||
|
||||
mutex_unlock(&sc->mutex);
|
||||
|
||||
if (wait_for_completion_timeout(&sc->go_beacon,
|
||||
timeout) == 0)
|
||||
timeout) == 0) {
|
||||
ath_dbg(common, CHAN_CTX,
|
||||
"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);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user