mirror_ubuntu-kernels/drivers/net/wireless
Arnd Bergmann 12ec37be3f wifi: ath10k: improve structure padding
Including an aligned structure inside of a packed one is ambiguous
and can lead to misaligned data, as pointed out by this clang warning:

drivers/net/wireless/ath/ath10k/htt.h:715:34: error: field prefix within 'struct htt_rx_indication' is less aligned than 'struct htt_rx_indication_prefix' and is usually due to 'struct htt_rx_indication' being packed, which can lead to unaligned accesses [-Werror,-Wunaligned-access]
        struct htt_rx_indication_prefix prefix;
                                        ^
drivers/net/wireless/ath/ath10k/htt.h:736:34: error: field prefix within 'struct htt_rx_indication_hl' is less aligned than 'struct htt_rx_indication_prefix' and is usually due to 'struct htt_rx_indication_hl' being packed, which can lead to unaligned accesses [-Werror,-Wunaligned-access]
        struct htt_rx_indication_prefix prefix;
                                        ^
drivers/net/wireless/ath/ath10k/htt.h:1564:2: error: field  within 'struct htt_tx_fetch_ind' is less aligned than 'union htt_tx_fetch_ind::(anonymous at drivers/net/wireless/ath/ath10k/htt.h:1564:2)' and is usually due to 'struct htt_tx_fetch_ind' being packed, which can lead to unaligned accesses [-Werror,-Wunaligned-access]
        union {
        ^
drivers/net/wireless/ath/ath10k/htt.h:1702:2: error: field  within 'struct htt_resp' is less aligned than 'union htt_resp::(anonymous at drivers/net/wireless/ath/ath10k/htt.h:1702:2)' and is usually due to 'struct htt_resp' being packed, which can lead to unaligned accesses [-Werror,-Wunaligned-access]

These structures appear to actually need the packing since they
are embedded at misaligned offsets. Add even more such annotations
here to enforce bytewise access throughout the driver.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20230616090439.2484857-1-arnd@kernel.org
2023-06-21 21:08:05 +03:00
..
admtek
ath wifi: ath10k: improve structure padding 2023-06-21 21:08:05 +03:00
atmel wifi: atmel: Fix atmel_private_handler array size 2022-11-01 12:30:22 +02:00
broadcom wifi: brcmfmac: wcc: Add debug messages 2023-05-15 21:25:11 +03:00
cisco wifi: airo: remove ISA_DMA_API dependency 2023-04-20 15:38:27 +03:00
intel Networking changes for 6.4. 2023-04-26 16:07:23 -07:00
intersil net: add missing includes of linux/net.h 2023-01-27 11:19:45 +00:00
legacy wifi: rndis_wlan: Replace fake flex-array with flexible-array member 2023-03-31 17:48:27 +03:00
marvell wireless-next patches for v6.5 2023-05-15 08:37:17 +01:00
mediatek wifi: mt7601u: delete dead code checking debugfs returns 2023-05-05 15:03:09 +03:00
microchip wifi: wilc1000: Increase ASSOC response buffer 2023-05-11 15:53:44 +03:00
purelifi wifi: plfxlc: fix potential memory leak in __lf_x_usb_enable_rx() 2022-11-28 15:56:17 +02:00
quantenna wifi: qtnfmac: use struct_size and size_sub for payload length 2023-03-13 15:44:29 +02:00
ralink wifi: rt2x00: Fix memory leak when handling surveys 2023-04-03 16:44:27 +03:00
realtek wifi: rtw89: 8851b: rfk: add TSSI 2023-05-17 11:06:41 +03:00
rsi wifi: rsi: Slightly simplify rsi_set_channel() 2023-03-31 17:45:50 +03:00
silabs spi: Updates for v6.4 2023-04-27 11:02:26 -07:00
st net: Replace all spi->chip_select and spi->cs_gpiod references with function call 2023-03-11 12:34:02 +00:00
ti net: Use of_property_read_bool() for boolean properties 2023-03-16 17:41:28 +00:00
virtual Driver core changes for 6.4-rc1 2023-04-27 11:53:57 -07:00
zydas wifi: zd1211rw: remove redundant decls 2023-02-13 19:25:47 +02:00
Kconfig wifi: move raycs, wl3501 and rndis_wlan to legacy directory 2023-03-13 15:42:14 +02:00
Makefile wifi: move raycs, wl3501 and rndis_wlan to legacy directory 2023-03-13 15:42:14 +02:00