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