In case of HE AP-STA link, ieee80211_send_nullfunc() will not send the QOS NULL 
packet to check if AP is still associated.
In this case, probe_send_count will be non zero and ieee80211_sta_work() will 
later disassociate the AP.
(although it didn't really send a test QOS NULL packet).
Fix is to decrement probe_send_count and not call ieee80211_send_nullfunc() in 
case of HE link.

Signed-off-by: Shay Bar <[email protected]>
---
Hope I solved all the SMTP server problems and patch is better now :)

 net/mac80211/mlme.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index 379d2ab6d327..bc5ed2dbe69b 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -2511,7 +2511,10 @@ static void ieee80211_mgd_probe_ap_send(struct 
ieee80211_sub_if_data *sdata)
 
        if (ieee80211_hw_check(&sdata->local->hw, REPORTS_TX_ACK_STATUS)) {
                ifmgd->nullfunc_failed = false;
-               ieee80211_send_nullfunc(sdata->local, sdata, false);
+               if (!(ifmgd->flags & IEEE80211_STA_DISABLE_HE))
+                       ifmgd->probe_send_count--;
+               else
+                       ieee80211_send_nullfunc(sdata->local, sdata, false);
        } else {
                int ssid_len;
 
-- 
2.22.0

Reply via email to