aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch b/package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch
new file mode 100644
index 0000000000..787883e217
--- /dev/null
+++ b/package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch
@@ -0,0 +1,26 @@
+From: Felix Fietkau <nbd@nbd.name>
+Date: Mon, 21 Sep 2020 17:43:06 +0200
+Subject: [PATCH] mac80211: fix regression in sta connection monitor
+
+When the nulldata frame was acked, the probe send count needs to be reset,
+otherwise it will keep increasing until the connection is considered dead,
+even though it fine.
+
+Fixes: 9abf4e49830d ("mac80211: optimize station connection monitor")
+Reported-by: Georgi Valkov <gvalkov@abv.bg>
+Signed-off-by: Felix Fietkau <nbd@nbd.name>
+---
+
+--- a/net/mac80211/mlme.c
++++ b/net/mac80211/mlme.c
+@@ -2508,7 +2508,9 @@ void ieee80211_sta_tx_notify(struct ieee
+ !sdata->u.mgd.probe_send_count)
+ return;
+
+- if (!ack)
++ if (ack)
++ sdata->u.mgd.probe_send_count = 0;
++ else
+ sdata->u.mgd.nullfunc_failed = true;
+ ieee80211_queue_work(&sdata->local->hw, &sdata->work);
+ }