[PATCH] mac80211: fix low throughput due to invalid addba extension
Govindaraj
gsamin at codeaurora.org
Tue Mar 16 15:47:54 GMT 2021
Addba request action frame received with the extension element from
certain 11ac stations, but the cmd id and length not matching to addba
extension and it failing in element parsing. Due to this, addba request
not acknowledged and aggregation not started which is causing low
throughput. Hence validating the cmd id before processing addba extension.
Signed-off-by: Govindaraj <gsamin at codeaurora.org>
---
net/mac80211/agg-rx.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/net/mac80211/agg-rx.c b/net/mac80211/agg-rx.c
index cce28e3..ea473d7 100644
--- a/net/mac80211/agg-rx.c
+++ b/net/mac80211/agg-rx.c
@@ -494,7 +494,8 @@ void ieee80211_process_addba_request(struct ieee80211_local *local,
ies_len = len - offsetof(struct ieee80211_mgmt,
u.action.u.addba_req.variable);
- if (ies_len) {
+ if (ies_len &&
+ mgmt->u.action.u.addba_req.variable[0] == WLAN_EID_ADDBA_EXT) {
ieee802_11_parse_elems(mgmt->u.action.u.addba_req.variable,
ies_len, true, &elems, mgmt->bssid, NULL);
if (elems.parse_error)
--
2.7.4
More information about the ath11k
mailing list