While debugging a station polling issue. Should it maybe send a probe request instead of just not probing at all? commit f39b07fdfb688724fedabf5507e15eaf398f2500 Author: Shay Bar <shay.bar@xxxxxxxxxx> Date: Wed Jul 3 16:18:48 2019 +0300 mac80211: HE STA disassoc due to QOS NULL not sent 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, even though no packet was ever sent. Fix this by decrementing probe_send_count and not calling ieee80211_send_nullfunc() in case of HE link, so that we still wait for some time for the AP beacon to reappear and don't disconnect right away. Signed-off-by: Shay Bar <shay.bar@xxxxxxxxxx> Link: https://lore.kernel.org/r/20190703131848.22879-1-shay.bar@xxxxxxxxxx [clarify commit message] Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 225633d9e2d4bd..e89ed800f01259 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -2512,7 +2512,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; Thanks, Ben -- Ben Greear <greearb@xxxxxxxxxxxxxxx> Candela Technologies Inc http://www.candelatech.com