Build regressions/improvements in v6.4-rc1

Geert Uytterhoeven geert at linux-m68k.org
Mon May 8 08:32:53 PDT 2023


Hi Pratyush,

On Mon, May 8, 2023 at 5:19 PM Pratyush Yadav <pratyush at kernel.org> wrote:
> On Mon, May 08 2023, Geert Uytterhoeven wrote:
> > On Mon, 8 May 2023, Geert Uytterhoeven wrote:
> >> Below is the list of build error/warning regressions/improvements in
> >> v6.4-rc1[1] compared to v6.3[2].
> >>
> >> Summarized:
> >>  - build errors: +9/-16
> >>  - build warnings: +1/-1439
> >>
> >> Happy fixing! ;-)
> >>
> >> Thanks to the linux-next team for providing the build service.
> >>
> >> [1] http://kisskb.ellerman.id.au/kisskb/branch/linus/head/ac9a78681b921877518763ba0e89202254349d1b/ (all 152 configs)
> >> [2] http://kisskb.ellerman.id.au/kisskb/branch/linus/head/457391b0380335d5e9a5babdec90ac53928b23b4/ (all 152 configs)
> >>
> >>
> [...]
> >
> >>  + /kisskb/src/drivers/mtd/spi-nor/spansion.c: error: 'op' is used uninitialized [-Werror=uninitialized]:  => 495:27, 364:27
>
> Hmm, I don't get why we get this warning. Line 495 is in
> s25fs256t_post_bfpt_fixup(). It declares 'op' and then it does
>
>     op = (struct spi_mem_op)
>         CYPRESS_NOR_RD_ANY_REG_OP(nor->params->addr_mode_nbytes,
>                       SPINOR_REG_CYPRESS_ARCFN, 1,
>                       nor->bouncebuf);
>     ret = spi_nor_read_any_reg(nor, &op, nor->reg_proto);
>
>
> which initializes 'op' before using it. Same with line 364 which is in
> the function cypress_nor_set_addr_mode_nbytes().

I suspect gcc-12 became stricter, and not all members of the union
are initialized.

> Even the compiler warnings [0] don't seem to make much sense to me:
>
>     /kisskb/src/drivers/mtd/spi-nor/spansion.c: In function 's25fs256t_post_bfpt_fixup':
>     /kisskb/src/drivers/mtd/spi-nor/spansion.c:495:27: error: 'op' is used uninitialized [-Werror=uninitialized]
>     495 |         struct spi_mem_op op;
>         |                           ^~
>     /kisskb/src/drivers/mtd/spi-nor/spansion.c:495:27: note: 'op' declared here
>     495 |         struct spi_mem_op op;
>         |                           ^~
>
> [0] http://kisskb.ellerman.id.au/kisskb/buildresult/14922057/

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

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



More information about the linux-mtd mailing list