Re: Build regressions/improvements in v6.5-rc3

From: Geert Uytterhoeven
Date: Mon Aug 14 2023 - 12:22:10 EST


Hi Kees,

On Sat, Jul 29, 2023 at 12:57 AM Kees Cook <keescook@xxxxxxxxxxxx> wrote:
> On Mon, Jul 24, 2023 at 02:43:02PM +0200, Geert Uytterhoeven wrote:
> > On Mon, 24 Jul 2023, Geert Uytterhoeven wrote:
> > > JFYI, when comparing v6.5-rc3[1] to v6.5-rc2[3], the summaries are:
> > > - build errors: +5/-0
> >
> > + /kisskb/src/include/linux/fortify-string.h: error: call to '__write_overflow_field' declared with attribute warning: detected write beyond size of field (1st parameter); maybe use struct_group()? [-Werror=attribute-warning]: => 583:25, 493:25
> >
> > mips-gcc13/mips-allmodconfig
> >
> > Full context:
> >
> > In function 'fortify_memset_chk',
> > inlined from 'memset_io' at /kisskb/src/arch/mips/include/asm/io.h:486:2,
> > inlined from 'build_auth_frame' at /kisskb/src/drivers/net/wireless/legacy/ray_cs.c:2697:2:
> > /kisskb/src/include/linux/fortify-string.h:493:25: error: call to '__write_overflow_field' declared with attribute warning: detected write beyond size of field (1st parameter); maybe use struct_group()? [-Werror=attribute-warning]
> > 493 | __write_overflow_field(p_size_field, size);
> > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > In function 'fortify_memcpy_chk',
> > inlined from 'memcpy_toio' at /kisskb/src/arch/mips/include/asm/io.h:494:2,
> > inlined from 'translate_frame' at /kisskb/src/drivers/net/wireless/legacy/ray_cs.c:955:3,
> > inlined from 'ray_hw_xmit.constprop' at /kisskb/src/drivers/net/wireless/legacy/ray_cs.c:912:12:
> > /kisskb/src/include/linux/fortify-string.h:583:25: error: call to '__write_overflow_field' declared with attribute warning: detected write beyond size of field (1st parameter); maybe use struct_group()? [-Werror=attribute-warning]
> > 583 | __write_overflow_field(p_size_field, size);
> > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >
> > Single-element flexible array abuse in drivers/net/wireless/legacy/rayctl.h:tx_msg.var
>
> ^^^^
> is this line from you or is there a tool outputting this? Because, yes,

It is a line from me.

(should I take it as a compliment that I start sounding like a tool? ;-)

> very true:
>
> struct tx_msg {
> struct tib_structure tib;
> struct phy_header phy;
> struct mac_header mac;
> UCHAR var[1];
> };
>
> I'll send a patch.

Thanks, I noticed you took care while I was enjoying summer holidays ;-)

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds