On Mon, 20 Nov 2023 14:05:08 +0300, Dmitry Antipov wrote: > Recently the kernel test robot has reported an ARM-specific BUILD_BUG_ON() > in an old and unmaintained wil6210 wireless driver. The problem comes from > the structure packing rules of old ARM ABI ('-mabi=apcs-gnu'). For example, > the following structure is packed to 18 bytes instead of 16: > > struct poorly_packed { > unsigned int a; > unsigned int b; > unsigned short c; > union { > struct { > unsigned short d; > unsigned int e; > } __attribute__((packed)); > struct { > unsigned short d; > unsigned int e; > } __attribute__((packed)) inner; > }; > } __attribute__((packed)); > > [...] Applied to for-linus/hardening, thanks! [1/1] uapi: propagate __struct_group() attributes to the container union https://git.kernel.org/kees/c/4e86f32a13af Take care, -- Kees Cook