mirror_ubuntu-kernels/drivers/net/wireless/ath/ath10k
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
..
ahb.c wifi: atk10k: Don't opencode ath10k_pci_priv() in ath10k_ahb_priv() 2023-06-09 15:27:58 +03:00
ahb.h
bmi.c wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
bmi.h
ce.c wifi: ath10k: remove unused ath10k_get_ring_byte function 2023-03-24 16:52:57 +02:00
ce.h
core.c wifi: ath10k: Trigger STA disconnect after reconfig complete on hardware restart 2023-06-01 13:32:13 +03:00
core.h wifi: ath10k: Serialize wake_tx_queue ops 2023-05-05 16:01:09 +03:00
coredump.c wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
coredump.h wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
debug.c wifi: ath10k: Use list_count_nodes() 2023-05-05 16:07:45 +03:00
debug.h
debugfs_sta.c wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
hif.h
htc.c wifi: ath10k: Delay the unmapping of the buffer 2022-10-19 08:44:34 +03:00
htc.h
htt_rx.c wifi: ath10k: Remove redundant argument offset 2022-11-17 14:57:35 +02:00
htt_tx.c wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
htt.c ath10k: abstract htt_rx_desc structure 2022-01-17 14:45:15 +02:00
htt.h wifi: ath10k: improve structure padding 2023-06-21 21:08:05 +03:00
hw.c wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
hw.h wifi: ath10k: Delay the unmapping of the buffer 2022-10-19 08:44:34 +03:00
Kconfig wifi: ath10k: fix QCOM_SMEM dependency 2022-12-02 20:24:06 +02:00
mac.c wifi: ath10k: Trigger STA disconnect after reconfig complete on hardware restart 2023-06-01 13:32:13 +03:00
mac.h
Makefile
p2p.c
p2p.h
pci.c wifi: ath10k: Remove redundant pci_clear_master 2023-04-12 13:03:24 +03:00
pci.h wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
qmi_wlfw_v01.c wifi: ath10k: Make QMI message rules const 2022-11-03 08:06:52 +02:00
qmi_wlfw_v01.h wifi: ath10k: Make QMI message rules const 2022-11-03 08:06:52 +02:00
qmi.c firmware: qcom_scm: Use fixed width src vm bitmap 2023-03-15 16:52:11 -07:00
qmi.h
rx_desc.h wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
sdio.c wireless-next patches for v6.1 2022-09-30 10:07:31 -07:00
sdio.h
snoc.c wifi: ath10k: Convert to platform remove callback returning void 2023-06-09 15:27:58 +03:00
snoc.h
spectral.c
spectral.h
swap.c
swap.h ath10k: Replace zero-length array with flexible-array member 2022-02-21 12:23:28 +02:00
targaddrs.h
testmode_i.h
testmode.c
testmode.h
thermal.c wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
thermal.h wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
trace.c
trace.h tracing/ath: Use the new __vstring() helper 2022-07-15 17:44:40 -04:00
txrx.c ath10k: improve tx status reporting 2022-05-22 15:27:51 +03:00
txrx.h
usb.c net: drop the weight argument from netif_napi_add 2022-09-28 18:57:14 -07:00
usb.h wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
wmi-ops.h
wmi-tlv.c wifi: ath10k: Check return value of ath10k_get_arvif() in ath10k_wmi_event_tdls_peer() 2022-10-13 09:20:45 +03:00
wmi-tlv.h wifi: ath10k: Fix miscellaneous spelling errors 2022-09-16 12:18:51 +03:00
wmi.c wifi: ath10k: Use list_count_nodes() 2023-05-05 16:07:45 +03:00
wmi.h wifi: ath10k: Use list_count_nodes() 2023-05-05 16:07:45 +03:00
wow.c ath10k: fix memory overwrite of the WoWLAN wakeup packet pattern 2022-01-11 16:30:14 +02:00
wow.h