aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2023-11-10 15:29:30 +0100
committerFelix Fietkau <nbd@nbd.name>2023-12-07 18:50:22 +0100
commit2ee1c40daeb9a33e25c460bf87feca58e91af879 (patch)
treee137362efc3dff53b83ffc965c8ec1fc9362416e
parentwifi: mt76: mt7915: also MT7981 is 3T3R but nss2 on 5 GHz band (diff)
downloadlinux-2ee1c40daeb9a33e25c460bf87feca58e91af879.tar.gz
linux-2ee1c40daeb9a33e25c460bf87feca58e91af879.zip
wifi: mt76: mt7996: fix mt7996_mcu_all_sta_info_event struct packing
The internal struct and union inside mt7996_mcu_all_sta_info_event is marked as being aligned, which conflicts with it being unaligned within that structure: drivers/net/wireless/mediatek/mt76/mt7996/mcu.h:165:2: error: field within 'struct mt7996_mcu_all_sta_info_event' is less aligned than 'union mt7996_mcu_all_sta_info_event::(anonymous at ../drivers/net/wireless/mediatek/mt76/mt7996/mcu.h:165:2)' and is usually due to 'struct mt7996_mcu_all_sta_info_event' being packed, which can lead to unaligned accesses [-Werror,-Wunaligned-access] Mark all three as being packed as well to ensure byte packing for the entire thing. Fixes: adde3eed4a75 ("wifi: mt76: mt7996: Add mcu commands for getting sta tx statistic") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rw-r--r--drivers/net/wireless/mediatek/mt76/mt7996/mcu.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/mediatek/mt76/mt7996/mcu.h b/drivers/net/wireless/mediatek/mt76/mt7996/mcu.h
index 10a1b09ff2fb..3e013b20ee5e 100644
--- a/drivers/net/wireless/mediatek/mt76/mt7996/mcu.h
+++ b/drivers/net/wireless/mediatek/mt76/mt7996/mcu.h
@@ -212,15 +212,15 @@ struct mt7996_mcu_all_sta_info_event {
u8 rsv[2];
__le32 tx_bytes[IEEE80211_NUM_ACS];
__le32 rx_bytes[IEEE80211_NUM_ACS];
- } adm_stat[0];
+ } adm_stat[0] __packed;
struct {
__le16 wlan_idx;
u8 rsv[2];
__le32 tx_msdu_cnt;
__le32 rx_msdu_cnt;
- } msdu_cnt[0];
- };
+ } msdu_cnt[0] __packed;
+ } __packed;
} __packed;
struct mt7996_mcu_wed_rro_event {