Re: [PATCH 1/2] Makefile.extrawarn: move -Wcast-align to W=3
From: Masahiro Yamada
Date: Mon Nov 23 2020 - 06:19:02 EST
On Tue, Oct 27, 2020 at 10:42 AM Nathan Chancellor
<natechancellor@xxxxxxxxx> wrote:
>
> On Mon, Oct 26, 2020 at 11:03:13PM +0100, Arnd Bergmann wrote:
> > From: Arnd Bergmann <arnd@xxxxxxxx>
> >
> > This warning behaves differently depending on the architecture
> > and compiler. Using x86 gcc, we get no output at all because
> > gcc knows the architecture can handle unaligned accesses.
> >
> > Using x86 clang, or gcc on an architecture that needs to
> > manually deal with unaligned accesses, the build log is
> > completely flooded with these warnings, as they are commonly
> > invoked by inline functions of networking headers, e.g.
> >
> > include/linux/skbuff.h:1426:26: warning: cast increases required alignment of target type [-Wcast-align]
> >
> > The compiler is correct to point this out, as we are dealing
> > with undefined behavior that does cause problems in practice,
> > but there is also no good way to rewrite the code in commonly
> > included headers to a safer method.
> >
> > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
>
> Always sad to see a warning move further down the list but noisy headers
> are rough to deal with. This seems okay.
>
> Reviewed-by: Nathan Chancellor <natechancellor@xxxxxxxxx>
>
> > ---
> > scripts/Makefile.extrawarn | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
> > index 95e4cdb94fe9..6baee1200615 100644
> > --- a/scripts/Makefile.extrawarn
> > +++ b/scripts/Makefile.extrawarn
> > @@ -60,7 +60,6 @@ endif
> > #
> > ifneq ($(findstring 2, $(KBUILD_EXTRA_WARN)),)
> >
> > -KBUILD_CFLAGS += -Wcast-align
> > KBUILD_CFLAGS += -Wdisabled-optimization
> > KBUILD_CFLAGS += -Wnested-externs
> > KBUILD_CFLAGS += -Wshadow
> > @@ -80,6 +79,7 @@ endif
> > ifneq ($(findstring 3, $(KBUILD_EXTRA_WARN)),)
> >
> > KBUILD_CFLAGS += -Wbad-function-cast
> > +KBUILD_CFLAGS += -Wcast-align
> > KBUILD_CFLAGS += -Wcast-qual
> > KBUILD_CFLAGS += -Wconversion
> > KBUILD_CFLAGS += -Wpacked
> > --
> > 2.27.0
> >
Applied to linux-kbuild. Thanks.
But, I think people already tend to ignore W=2 warnings.
--
Best Regards
Masahiro Yamada