All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] mac80211: fix low throughput due to invalid addba extension
@ 2021-03-16 15:47 ` Govindaraj
  0 siblings, 0 replies; 8+ messages in thread
From: Govindaraj @ 2021-03-16 15:47 UTC (permalink / raw)
  To: johannes; +Cc: linux-wireless, ath11k, Govindaraj

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


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-04-06 18:30 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-16 15:47 [PATCH] mac80211: fix low throughput due to invalid addba extension Govindaraj
2021-03-16 15:47 ` Govindaraj
2021-03-16 15:51 ` Johannes Berg
2021-03-16 15:51   ` Johannes Berg
2021-03-16 17:45   ` Govindaraj Saminathan
2021-03-16 17:45     ` Govindaraj Saminathan
2021-04-06 18:29     ` Govindaraj Saminathan
2021-04-06 18:29       ` Govindaraj Saminathan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.