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]>
---
 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

________________________________
The information transmitted is intended only for the person or entity to which 
it is addressed and may contain confidential and/or privileged material. Any 
retransmission, dissemination, copying or other use of, or taking of any action 
in reliance upon this information is prohibited. If you received this in error, 
please contact the sender and delete the material from any computer. Nothing 
contained herein shall be deemed as a representation, warranty or a commitment 
by Celeno. No warranties are expressed or implied, including, but not limited 
to, any implied warranties of non-infringement, merchantability and fitness for 
a particular purpose.
________________________________

Reply via email to