From: Kees Cook <keescook@chromium.org>
To: Masahiro Yamada <masahiroy@kernel.org>
Cc: linux-kbuild@vger.kernel.org,
kernel-hardening@lists.openwall.com,
Emese Revfy <re.emese@gmail.com>,
Michal Marek <michal.lkml@markovi.net>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/2] kbuild: add -Wall to KBUILD_HOSTCXXFLAGS
Date: Wed, 25 Mar 2020 19:06:30 -0700 [thread overview]
Message-ID: <202003251906.973AD868@keescook> (raw)
In-Reply-To: <20200325031433.28223-2-masahiroy@kernel.org>
On Wed, Mar 25, 2020 at 12:14:32PM +0900, Masahiro Yamada wrote:
> Add -Wall to catch more warnings for C++ host programs.
>
> When I submitted the previous version, the 0-day bot reported
> -Wc++11-compat warnings for old GCC:
>
> HOSTCXX -fPIC scripts/gcc-plugins/latent_entropy_plugin.o
> In file included from /usr/lib/gcc/x86_64-linux-gnu/4.8/plugin/include/tm.h:28:0,
> from scripts/gcc-plugins/gcc-common.h:15,
> from scripts/gcc-plugins/latent_entropy_plugin.c:78:
> /usr/lib/gcc/x86_64-linux-gnu/4.8/plugin/include/config/elfos.h:102:21: warning: C++11 requires a space between string literal and macro [-Wc++11-compat]
> fprintf ((FILE), "%s"HOST_WIDE_INT_PRINT_UNSIGNED"\n",\
> ^
> /usr/lib/gcc/x86_64-linux-gnu/4.8/plugin/include/config/elfos.h:170:24: warning: C++11 requires a space between string literal and macro [-Wc++11-compat]
> fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED",%u\n", \
> ^
> In file included from /usr/lib/gcc/x86_64-linux-gnu/4.8/plugin/include/tm.h:42:0,
> from scripts/gcc-plugins/gcc-common.h:15,
> from scripts/gcc-plugins/latent_entropy_plugin.c:78:
> /usr/lib/gcc/x86_64-linux-gnu/4.8/plugin/include/defaults.h:126:24: warning: C++11 requires a space between string literal and macro [-Wc++11-compat]
> fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED",%u\n", \
> ^
>
> The source of the warnings is in the plugin headers, so we have no
> control of it. I just suppressed them by adding -Wno-c++11-compat to
> scripts/gcc-plugins/Makefile.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Acked-by: Kees Cook <keescook@chromium.org>
-Kees
> ---
>
> Makefile | 2 +-
> scripts/gcc-plugins/Makefile | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index 3b57ccab367b..593d8f1bbe90 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -400,7 +400,7 @@ HOSTCXX = g++
> KBUILD_HOSTCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 \
> -fomit-frame-pointer -std=gnu89 $(HOST_LFS_CFLAGS) \
> $(HOSTCFLAGS)
> -KBUILD_HOSTCXXFLAGS := -O2 $(HOST_LFS_CFLAGS) $(HOSTCXXFLAGS)
> +KBUILD_HOSTCXXFLAGS := -Wall -O2 $(HOST_LFS_CFLAGS) $(HOSTCXXFLAGS)
> KBUILD_HOSTLDFLAGS := $(HOST_LFS_LDFLAGS) $(HOSTLDFLAGS)
> KBUILD_HOSTLDLIBS := $(HOST_LFS_LIBS) $(HOSTLDLIBS)
>
> diff --git a/scripts/gcc-plugins/Makefile b/scripts/gcc-plugins/Makefile
> index f2ee8bd7abc6..efff00959a9c 100644
> --- a/scripts/gcc-plugins/Makefile
> +++ b/scripts/gcc-plugins/Makefile
> @@ -10,7 +10,7 @@ else
> HOSTLIBS := hostcxxlibs
> HOST_EXTRACXXFLAGS += -I$(GCC_PLUGINS_DIR)/include -I$(src) -std=gnu++98 -fno-rtti
> HOST_EXTRACXXFLAGS += -fno-exceptions -fasynchronous-unwind-tables -ggdb
> - HOST_EXTRACXXFLAGS += -Wno-narrowing -Wno-unused-variable
> + HOST_EXTRACXXFLAGS += -Wno-narrowing -Wno-unused-variable -Wno-c++11-compat
> export HOST_EXTRACXXFLAGS
> endif
>
> --
> 2.17.1
>
--
Kees Cook
next prev parent reply other threads:[~2020-03-26 2:06 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-25 3:14 [PATCH 1/2] kconfig: remove unused variable in qconf.cc Masahiro Yamada
2020-03-25 3:14 ` [PATCH 2/2] kbuild: add -Wall to KBUILD_HOSTCXXFLAGS Masahiro Yamada
2020-03-26 2:06 ` Kees Cook [this message]
2020-03-29 11:04 ` Masahiro Yamada
2020-03-26 2:05 ` [PATCH 1/2] kconfig: remove unused variable in qconf.cc Kees Cook
2020-03-29 11:03 ` Masahiro Yamada
-- strict thread matches above, loose matches on Subject: below --
2020-05-09 3:02 [PATCH 1/2] kbuild: add -Werror={strict-prototypes, implicit-int} to KBUILD_CFLAGS Masahiro Yamada
2020-05-09 3:02 ` [PATCH 2/2] kbuild: add -Wall to KBUILD_HOSTCXXFLAGS Masahiro Yamada
2020-02-17 1:27 [PATCH 1/2] kconfig: remove unused variable in qconf.cc Masahiro Yamada
2020-02-17 1:27 ` [PATCH 2/2] kbuild: add -Wall to KBUILD_HOSTCXXFLAGS Masahiro Yamada
2020-02-19 23:37 ` kbuild test robot
2020-02-19 23:37 ` kbuild test robot
2020-02-20 2:39 ` Masahiro Yamada
2020-02-20 2:39 ` Masahiro Yamada
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=202003251906.973AD868@keescook \
--to=keescook@chromium.org \
--cc=kernel-hardening@lists.openwall.com \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=masahiroy@kernel.org \
--cc=michal.lkml@markovi.net \
--cc=re.emese@gmail.com \
/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 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.