All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] Makefile.extrawarn: Move -Wunaligned-access to W=1
@ 2022-02-02 23:05 Nathan Chancellor
  2022-02-02 23:12 ` Nick Desaulniers
  0 siblings, 1 reply; 4+ messages in thread
From: Nathan Chancellor @ 2022-02-02 23:05 UTC (permalink / raw)
  To: Masahiro Yamada, Nick Desaulniers, Arnd Bergmann
  Cc: linux-kbuild, linux-kernel, llvm, Nathan Chancellor, stable

-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@vger.kernel.org
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@kernel.org>
---

v1 -> v2: https://lore.kernel.org/r/20220201232229.2992968-1-nathan@kernel.org/

* 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


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] Makefile.extrawarn: Move -Wunaligned-access to W=1
  2022-02-02 23:05 [PATCH v2] Makefile.extrawarn: Move -Wunaligned-access to W=1 Nathan Chancellor
@ 2022-02-02 23:12 ` Nick Desaulniers
  2022-02-08  4:23   ` Masahiro Yamada
  0 siblings, 1 reply; 4+ messages in thread
From: Nick Desaulniers @ 2022-02-02 23:12 UTC (permalink / raw)
  To: Nathan Chancellor
  Cc: Masahiro Yamada, Arnd Bergmann, linux-kbuild, linux-kernel, llvm, stable

On Wed, Feb 2, 2022 at 3:07 PM Nathan Chancellor <nathan@kernel.org> 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@vger.kernel.org
> 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@kernel.org>

Thanks to you and Arnd for working out whether this is important to
pursue. Sounds like it is.
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>

> ---
>
> v1 -> v2: https://lore.kernel.org/r/20220201232229.2992968-1-nathan@kernel.org/
>
> * 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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] Makefile.extrawarn: Move -Wunaligned-access to W=1
  2022-02-02 23:12 ` Nick Desaulniers
@ 2022-02-08  4:23   ` Masahiro Yamada
  2022-02-08 16:04     ` Nathan Chancellor
  0 siblings, 1 reply; 4+ messages in thread
From: Masahiro Yamada @ 2022-02-08  4:23 UTC (permalink / raw)
  To: Nick Desaulniers
  Cc: Nathan Chancellor, Arnd Bergmann, Linux Kbuild mailing list,
	Linux Kernel Mailing List, llvm, stable

On Thu, Feb 3, 2022 at 8:12 AM Nick Desaulniers <ndesaulniers@google.com> wrote:
>
> On Wed, Feb 2, 2022 at 3:07 PM Nathan Chancellor <nathan@kernel.org> 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@vger.kernel.org
> > 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@kernel.org>
>
> Thanks to you and Arnd for working out whether this is important to
> pursue. Sounds like it is.
> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
>
> > ---


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.



> >
> > v1 -> v2: https://lore.kernel.org/r/20220201232229.2992968-1-nathan@kernel.org/
> >
> > * 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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] Makefile.extrawarn: Move -Wunaligned-access to W=1
  2022-02-08  4:23   ` Masahiro Yamada
@ 2022-02-08 16:04     ` Nathan Chancellor
  0 siblings, 0 replies; 4+ messages in thread
From: Nathan Chancellor @ 2022-02-08 16:04 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Nick Desaulniers, Arnd Bergmann, Linux Kbuild mailing list,
	Linux Kernel Mailing List, llvm, stable

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@google.com> wrote:
> >
> > On Wed, Feb 2, 2022 at 3:07 PM Nathan Chancellor <nathan@kernel.org> 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@vger.kernel.org
> > > 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@kernel.org>
> >
> > Thanks to you and Arnd for working out whether this is important to
> > pursue. Sounds like it is.
> > Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
> >
> > > ---
> 
> 
> 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@kernel.org/
> > >
> > > * 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

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-02-08 16:04 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-02 23:05 [PATCH v2] Makefile.extrawarn: Move -Wunaligned-access to W=1 Nathan Chancellor
2022-02-02 23:12 ` Nick Desaulniers
2022-02-08  4:23   ` Masahiro Yamada
2022-02-08 16:04     ` Nathan Chancellor

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.