wifi: ath: work around false-positive stringop-overread warning
authorArnd Bergmann <arnd@arndb.de>
Fri, 5 May 2023 13:11:25 +0000 (16:11 +0300)
committerKalle Valo <quic_kvalo@quicinc.com>
Tue, 9 May 2023 16:46:02 +0000 (19:46 +0300)
commit695df2f417d25202bdac9cde3c82d2acb6492b4d
tree2362cf986011b9dd3406e13cc4e5bd5ee4060d7c
parent91dce40914337bc47ac95e00f2b055169ee53697
wifi: ath: work around false-positive stringop-overread warning

In a rare arm64 randconfig build, I got multiple warnings for ath11k
and ath12k:

In function 'ath11k_peer_assoc_h_ht',
    inlined from 'ath11k_peer_assoc_prepare' at drivers/net/wireless/ath/ath11k/mac.c:2665:2:
drivers/net/wireless/ath/ath11k/mac.c:1709:13: error: 'ath11k_peer_assoc_h_ht_masked' reading 10 bytes from a region of size 0 [-Werror=stringop-overread]
 1709 |         if (ath11k_peer_assoc_h_ht_masked(ht_mcs_mask))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This happens whenever gcc-13 fails to inline one of the functions
that take a fixed-length array argument but gets passed a pointer.

Change these functions to all take a regular pointer argument
instead.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20230417205447.1800912-1-arnd@kernel.org
drivers/net/wireless/ath/ath11k/mac.c
drivers/net/wireless/ath/ath12k/mac.c