While mac80211 using null frames when connection polling,
we should queue this frames while NOA could be there, and
AP, P2P_GO could be not present.

Without this patch, with no traffic we often saw disconnections
while we try to send nullfunc when AP/GO wasn't present.

Signed-off-by: Janusz Dziedzic <janusz.dzied...@tieto.com>
---
 drivers/net/wireless/ath/ath9k/xmit.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/net/wireless/ath/ath9k/xmit.c 
b/drivers/net/wireless/ath/ath9k/xmit.c
index 26698a6..82fc76f 100644
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -2331,6 +2331,12 @@ int ath_tx_start(struct ieee80211_hw *hw, struct sk_buff 
*skb,
 
        queue = ieee80211_is_data_present(hdr->frame_control);
 
+       /* If chanctx, queue all null frames while NOA could be there */
+       if (ath9k_is_chanctx_enabled() &&
+           ieee80211_is_nullfunc(hdr->frame_control) &&
+           !txctl->force_channel)
+               queue = true;
+
        /* Force queueing of all frames that belong to a virtual interface on
         * a different channel context, to ensure that they are sent on the
         * correct channel.
-- 
1.9.1

_______________________________________________
ath9k-devel mailing list
ath9k-devel@lists.ath9k.org
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Reply via email to