Search Linux Wireless

Re: [linux-next:master 3615/4301] include/linux/compiler_types.h:335:45: error: call to '__compiletime_assert_314' declared with attribute error: BUILD_BUG_ON failed: sizeof(txpd->tx_dest_addr) != ETH_ALEN

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Dec 01, 2021 at 06:29:49PM +0100, Johannes Berg wrote:
> On Wed, 2021-12-01 at 08:41 -0800, Kees Cook wrote:
> > 
> > > >    drivers/net/wireless/marvell/libertas/tx.c:116:9: note: in expansion of macro 'BUILD_BUG_ON'
> > > >      116 |         BUILD_BUG_ON(sizeof(txpd->tx_dest_addr) != ETH_ALEN);
> > > >          |         ^~~~~~~~~~~~
> > > 
> > > Kees, can you take a look at this build error? You added the
> > > BUILD_BUG_ON(), right?
> > 
> > I will investigate! Given this doesn't happen on allmodconfig but
> > a randconfig trips it, this might be finding a legit issue, but I'll
> > report back more details.
> > 
> 
> It's probably some alignment thing - note it happened on a specific ARM
> with a specific compiler?

Yup, that was it. It's an interesting bit of "accidentally correct"
problems that I think I've now fixed with this series:
https://lore.kernel.org/all/20211201173234.578124-1-keescook@xxxxxxxxxxxx/

My pahole before/after testing appears to have been too limited and
missed this case. :( I'm currently reviewing all the others I've sent as
well.

> But there's not really a good reason to even have the struct_group here,
> we only use it as if it was
> 
> 	u8 tx_dest_addr[ETH_ALEN];
> 
> anyway?

Ah yeah, nothing uses tx_dest_addr_high nor tx_dest_addr_low. Should I
send another patch to just rip out the struct_group entirely?

-- 
Kees Cook



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux