mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-01 10:45:49 +00:00
mac80211: fix time-is-after bug in mlme
The incorrect timeout check caused probing to happen when it did
not need to happen. This in turn caused tx performance drop
for around 5 seconds in ath10k-ct driver. Possibly that tx drop
is due to a secondary issue, but fixing the probe to not happen
when traffic is running fixes the symptom.
Signed-off-by: Ben Greear <greearb@candelatech.com>
Fixes: 9abf4e4983
("mac80211: optimize station connection monitor")
Acked-by: Felix Fietkau <nbd@nbd.name>
Link: https://lore.kernel.org/r/20210330230749.14097-1-greearb@candelatech.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
1153a74768
commit
7d73cd946d
@ -4707,7 +4707,10 @@ static void ieee80211_sta_conn_mon_timer(struct timer_list *t)
|
||||
timeout = sta->rx_stats.last_rx;
|
||||
timeout += IEEE80211_CONNECTION_IDLE_TIME;
|
||||
|
||||
if (time_is_before_jiffies(timeout)) {
|
||||
/* If timeout is after now, then update timer to fire at
|
||||
* the later date, but do not actually probe at this time.
|
||||
*/
|
||||
if (time_is_after_jiffies(timeout)) {
|
||||
mod_timer(&ifmgd->conn_mon_timer, round_jiffies_up(timeout));
|
||||
return;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user