From: Romain Naour <romain.naour@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2 02/15] linux: disable Werror for powerpc kernels
Date: Wed, 8 May 2019 17:07:07 +0200 [thread overview]
Message-ID: <20190508150720.27946-3-romain.naour@gmail.com> (raw)
In-Reply-To: <20190508150720.27946-1-romain.naour@gmail.com>
From patch [1] included in kernel >= 5.0:
"The upcoming GCC 9 release extends the -Wmissing-attributes warnings
(enabled by -Wall) to C and aliases: it warns when particular function
attributes are missing in the aliases but not in their target.
In particular, it triggers for all the init/cleanup_module
aliases in the kernel (defined by the module_init/exit macros),
ending up being very noisy.
These aliases point to the __init/__exit functions of a module,
which are defined as __cold (among other attributes). However,
the aliases themselves do not have the __cold attribute.
Since the compiler behaves differently when compiling a __cold
function as well as when compiling paths leading to calls
to __cold functions, the warning is trying to point out
the possibly-forgotten attribute in the alias."
Werror is set by default while building ppc kernel [2], but
some warning can be introduced while building current kernel with
newer compiler (for example building kernel 4.19 with gcc 9.1).
For the same reason why we remove Werror in packages's compiler
flags. Building with Werror is not bulletproof when we start
using a newer compiler that introduce new warnings.
This is the case here.
Also this option is a bit strange since it's specific to ppc kernels:
"The intention is to make it harder for people to inadvertantly
introduce warnings in the arch/powerpc code."
Other kernel developers on other arch may be interested by a
similar/more generic option.
So, It's clearly intended for kernel developers.
Instead of backporting this patch [1] to kernel 4.19, select
unconditionally the Kconfig option CONFIG_PPC_DISABLE_WERROR
that allow to disable Werror.
Fixes:
https://gitlab.com/kubu93/toolchains-builder/-/jobs/205435741
[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=a6e60d84989fa0e91db7f236eda40453b0e44afa
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=ba55bd74360ea4b8b95e73ed79474d37ff482b36
[3] https://gitlab.com/bootlin/toolchains-builder
Fix-suggested-by: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
v2: add a shared fragment in board/fragments/linux and update
qemu ppc* defconfigs. (Arnout)
v3: commit log (Yann)
enable the option from linux.mk instead of the defconfig.
---
linux/linux.mk | 2 ++
1 file changed, 2 insertions(+)
diff --git a/linux/linux.mk b/linux/linux.mk
index 51fd41fa15..85364451a8 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -315,6 +315,8 @@ define LINUX_KCONFIG_FIXUP_CMDS
$(LINUX_FIXUP_CONFIG_ENDIANNESS)
$(if $(BR2_arm)$(BR2_armeb),
$(call KCONFIG_ENABLE_OPT,CONFIG_AEABI,$(@D)/.config))
+ $(if $(BR2_powerpc)$(BR2_powerpc64)$(BR2_powerpc64le),
+ $(call KCONFIG_ENABLE_OPT,CONFIG_PPC_DISABLE_WERROR,$(@D)/.config))
$(if $(BR2_TARGET_ROOTFS_CPIO),
$(call KCONFIG_ENABLE_OPT,CONFIG_BLK_DEV_INITRD,$(@D)/.config))
# As the kernel gets compiled before root filesystems are
--
2.14.5
next prev parent reply other threads:[~2019-05-08 15:07 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-08 15:07 [Buildroot] [PATCH v2 00/15] Add gcc 9.1 Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 01/15] package/glibc/arc: fix build issue with gcc-9.1 Romain Naour
2019-05-08 15:07 ` Romain Naour [this message]
2019-05-26 14:51 ` [Buildroot] [PATCH v2 02/15] linux: disable Werror for powerpc kernels Arnout Vandecappelle
2019-05-26 15:04 ` Yann E. MORIN
2019-05-08 15:07 ` [Buildroot] [PATCH v2 03/15] [RFC] package/uclibc: remove asm constraint Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 04/15] toolchain: add gcc 9 entry Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 05/15] package/gcc: add support for gcc 9.1 Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 06/15] arch: add BR2_ARCH_NEEDS_GCC_AT_LEAST_9 Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 07/15] toolchain-external: add gcc 9 entry Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 08/15] package/gcc: switch to gcc 8.x as the default Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 09/15] arch/arm: move dependency on 64-bit down to individual cores Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 10/15] arch/arm: some cores have a different name with gcc-9 Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 11/15] arch/arm: saphira is in fact an armv8.4a Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 12/15] arch/arm: add two new 64-bit-only armv8a cores Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 13/15] arch/arm: add two new cortex-based armv8.2a cores Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 14/15] arch/arm: add two new non-cortex-based " Romain Naour
2019-05-08 15:07 ` [Buildroot] [PATCH v2 15/15] package/gcc: enable gcc 9.1 for ork1 (openrisc) Romain Naour
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190508150720.27946-3-romain.naour@gmail.com \
--to=romain.naour@gmail.com \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox