Re: [PATCH v2] Makefile.extrawarn: Move -Wunaligned-access to W=1

From: Nathan Chancellor
Date: Tue Feb 08 2022 - 11:04:26 EST


On Tue, Feb 08, 2022 at 01:23:32PM +0900, Masahiro Yamada wrote:
> On Thu, Feb 3, 2022 at 8:12 AM Nick Desaulniers <ndesaulniers@xxxxxxxxxx> wrote:
> >
> > On Wed, Feb 2, 2022 at 3:07 PM Nathan Chancellor <nathan@xxxxxxxxxx> wrote:
> > >
> > > -Wunaligned-access is a new warning in clang that is default enabled for
> > > arm and arm64 under certain circumstances within the clang frontend (see
> > > LLVM commit below). On v5.17-rc2, an ARCH=arm allmodconfig build shows
> > > 1284 total/70 unique instances of this warning (most of the instances
> > > are in header files), which is quite noisy.
> > >
> > > To keep a normal build green through CONFIG_WERROR, only show this
> > > warning with W=1, which will allow automated build systems to catch new
> > > instances of the warning so that the total number can be driven down to
> > > zero eventually since catching unaligned accesses at compile time would
> > > be generally useful.
> > >
> > > Cc: stable@xxxxxxxxxxxxxxx
> > > Link: https://github.com/llvm/llvm-project/commit/35737df4dcd28534bd3090157c224c19b501278a
> > > Link: https://github.com/ClangBuiltLinux/linux/issues/1569
> > > Link: https://github.com/ClangBuiltLinux/linux/issues/1576
> > > Signed-off-by: Nathan Chancellor <nathan@xxxxxxxxxx>
> >
> > Thanks to you and Arnd for working out whether this is important to
> > pursue. Sounds like it is.
> > Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>
> >
> > > ---
>
>
> I assume this should be considered as a bug fix
> to avoid the error for the combination of CONFIG_WERROR=y
> and the latest Clang.
>
> Applied to linux-kbuild/fixes.
> Thanks.

Yes, this is what I was hoping for! Thank you, I'll try to make that
more clear in the future.

Cheers,
Nathan

> > >
> > > v1 -> v2: https://lore.kernel.org/r/20220201232229.2992968-1-nathan@xxxxxxxxxx/
> > >
> > > * Move to W=1 instead of W=2 so that new instances are caught (Arnd).
> > > * Add links to the ClangBuiltLinux issue tracker.
> > >
> > > scripts/Makefile.extrawarn | 1 +
> > > 1 file changed, 1 insertion(+)
> > >
> > > diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
> > > index d53825503874..8be892887d71 100644
> > > --- a/scripts/Makefile.extrawarn
> > > +++ b/scripts/Makefile.extrawarn
> > > @@ -51,6 +51,7 @@ KBUILD_CFLAGS += -Wno-sign-compare
> > > KBUILD_CFLAGS += -Wno-format-zero-length
> > > KBUILD_CFLAGS += $(call cc-disable-warning, pointer-to-enum-cast)
> > > KBUILD_CFLAGS += -Wno-tautological-constant-out-of-range-compare
> > > +KBUILD_CFLAGS += $(call cc-disable-warning, unaligned-access)
> > > endif
> > >
> > > endif
> > >
> > > base-commit: 26291c54e111ff6ba87a164d85d4a4e134b7315c
> > > --
> > > 2.35.1
> > >
> >
> >
> > --
> > Thanks,
> > ~Nick Desaulniers
>
>
>
> --
> Best Regards
> Masahiro Yamada