mirror of
https://git.proxmox.com/git/mirror_ubuntu-kernels.git
synced 2025-12-03 11:04:46 +00:00
In builds with -Warray-bounds, casts from smaller objects to larger
objects will produce warnings. These can be overly conservative, but since
-Warray-bounds has been finding legitimate bugs, it is desirable to turn
it on globally. Instead of casting a u32 to a larger object, redefine
the u32 portion of the header to a separate struct that can be used for
both u32 operations and the distinct header fields. Silences this warning:
drivers/net/wireless/ath/ath6kl/htc_mbox.c: In function 'htc_wait_for_ctrl_msg':
drivers/net/wireless/ath/ath6kl/htc_mbox.c:2275:20: error: array subscript 'struct htc_frame_hdr[0]' is partly outside array bounds of 'u32[1]' {aka 'unsigned int[1]'} [-Werror=array-bounds]
2275 | if (htc_hdr->eid != ENDPOINT_0)
| ^~
drivers/net/wireless/ath/ath6kl/htc_mbox.c:2264:13: note: while referencing 'look_ahead'
2264 | u32 look_ahead;
| ^~~~~~~~~~
This change results in no executable instruction differences.
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20211207063538.2767954-1-keescook@chromium.org
|
||
|---|---|---|
| .. | ||
| bmi.c | ||
| bmi.h | ||
| cfg80211.c | ||
| cfg80211.h | ||
| common.h | ||
| core.c | ||
| core.h | ||
| debug.c | ||
| debug.h | ||
| hif-ops.h | ||
| hif.c | ||
| hif.h | ||
| htc_mbox.c | ||
| htc_pipe.c | ||
| htc-ops.h | ||
| htc.h | ||
| init.c | ||
| Kconfig | ||
| main.c | ||
| Makefile | ||
| recovery.c | ||
| sdio.c | ||
| target.h | ||
| testmode.c | ||
| testmode.h | ||
| trace.c | ||
| trace.h | ||
| txrx.c | ||
| usb.c | ||
| wmi.c | ||
| wmi.h | ||