mirror of
https://github.com/outbackdingo/mt76.git
synced 2026-10-24 13:26:48 +00:00
wifi: mt76: mt7996: reserve space for the CSA-abort countdown TLV
When a CSA countdown is active, mt7996_mcu_beacon_cntdwn() emits two
bss_bcn_cntdwn_tlv entries (the CSA countdown and the CCA-abort BCC), but
MT7996_BEACON_UPDATE_SIZE only reserved one. With MBSSID enabled and a
near-maximum beacon template the extra 8 bytes could push the offload
command past MT7996_MAX_BSS_OFFLOAD_SIZE and trigger skb_over_panic().
Reserve room for both countdown TLVs.
Fixes: 98686cd21624 ("wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices")
Signed-off-by: Felix Fietkau <[email protected]>
This commit is contained in:
+1
-1
@@ -950,7 +950,7 @@ enum {
|
|||||||
#define MT7996_BEACON_UPDATE_SIZE (sizeof(struct bss_req_hdr) + \
|
#define MT7996_BEACON_UPDATE_SIZE (sizeof(struct bss_req_hdr) + \
|
||||||
sizeof(struct bss_bcn_content_tlv) + \
|
sizeof(struct bss_bcn_content_tlv) + \
|
||||||
4 + MT_TXD_SIZE + \
|
4 + MT_TXD_SIZE + \
|
||||||
sizeof(struct bss_bcn_cntdwn_tlv) + \
|
sizeof(struct bss_bcn_cntdwn_tlv) * 2 + \
|
||||||
sizeof(struct bss_bcn_mbss_tlv))
|
sizeof(struct bss_bcn_mbss_tlv))
|
||||||
#define MT7996_MAX_BSS_OFFLOAD_SIZE 2048
|
#define MT7996_MAX_BSS_OFFLOAD_SIZE 2048
|
||||||
#define MT7996_MAX_BEACON_SIZE (MT7996_MAX_BSS_OFFLOAD_SIZE - \
|
#define MT7996_MAX_BEACON_SIZE (MT7996_MAX_BSS_OFFLOAD_SIZE - \
|
||||||
|
|||||||
Reference in New Issue
Block a user