Arnd Bergmann <[email protected]> wrote:

> 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 <[email protected]>
> Signed-off-by: Kalle Valo <[email protected]>

Patch applied to ath-next branch of ath.git, thanks.

12ec37be3faf wifi: ath10k: improve structure padding

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches


_______________________________________________
ath10k mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/ath10k

Reply via email to