Commit 966d5c2c authored by Felix Fietkau's avatar Felix Fietkau Committed by Greg Kroah-Hartman
Browse files

wifi: mac80211: add a workaround for receiving non-standard mesh A-MSDU



[ Upstream commit 6e4c0d04 ]

At least ath10k and ath11k supported hardware (maybe more) does not implement
mesh A-MSDU aggregation in a standard compliant way.
802.11-2020 9.3.2.2.2 declares that the Mesh Control field is part of the
A-MSDU header (and little-endian).
As such, its length must not be included in the subframe length field.
Hardware affected by this bug treats the mesh control field as part of the
MSDU data and sets the length accordingly.
In order to avoid packet loss, keep track of which stations are affected
by this and take it into account when converting A-MSDU to 802.3 + mesh control
packets.

Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
Link: https://lore.kernel.org/r/20230213100855.34315-5-nbd@nbd.name


Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
Stable-dep-of: 9ad79748 ("wifi: cfg80211: check A-MSDU format more carefully")
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 79720743
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment