From: Kees Cook <keescook@chromium.org>
To: Guenter Roeck <linux@roeck-us.net>
Cc: Alexander Popov <alex.popov@linux.com>,
linux-hardening@vger.kernel.org, linux-kernel@vger.kernel.org,
Masahiro Yamada <masahiroy@kernel.org>,
linux-kbuild@vger.kernel.org
Subject: Re: [PATCH] gcc-plugins: Change all version strings match kernel
Date: Mon, 23 May 2022 12:54:06 -0700 [thread overview]
Message-ID: <202205231251.39D012E@keescook> (raw)
In-Reply-To: <20220523143054.GA3164771@roeck-us.net>
On Mon, May 23, 2022 at 07:30:54AM -0700, Guenter Roeck wrote:
> On Tue, May 10, 2022 at 04:54:12PM -0700, Kees Cook wrote:
> > It's not meaningful for the GCC plugins to track their versions separately
> > from the rest of the kernel. Switch all versions to the kernel version.
> >
> > Fix mismatched indenting while we're at it.
> >
> > Cc: linux-hardening@vger.kernel.org
> > Signed-off-by: Kees Cook <keescook@chromium.org>
>
> I see random build failures with this patch in linux-next.
>
> Error log:
> cc1plus: fatal error: ./include/generated/utsrelease.h: No such file or directory
>
> The problem doesn't happen all the time. Is there some missing dependency ?
Here's a prior report I hadn't been able to repro:
https://lore.kernel.org/linux-mm/202205230239.EZxeZ3Fv-lkp@intel.com
But now I can: I see it with a -j1 build. This fixes it for me:
diff --git a/Makefile b/Makefile
index 91c91fcf3c24..c04420d5aa3d 100644
--- a/Makefile
+++ b/Makefile
@@ -1175,7 +1175,7 @@ include/config/kernel.release: FORCE
# Carefully list dependencies so we do not try to build scripts twice
# in parallel
PHONY += scripts
-scripts: scripts_basic scripts_dtc
+scripts: include/generated/utsrelease.h scripts_basic scripts_dtc
$(Q)$(MAKE) $(build)=$(@)
# Things we need to do before we recursively start building the kernel
diff --git a/scripts/gcc-plugins/Makefile b/scripts/gcc-plugins/Makefile
index 6f0aecad5d67..c29334669a16 100644
--- a/scripts/gcc-plugins/Makefile
+++ b/scripts/gcc-plugins/Makefile
@@ -64,5 +64,5 @@ $(foreach m, $(notdir $(plugin-multi)), $(eval $(obj)/$m: $(addprefix $(obj)/, $
quiet_cmd_plugin_cxx_o_c = HOSTCXX $@
cmd_plugin_cxx_o_c = $(HOSTCXX) $(plugin_cxxflags) -c -o $@ $<
-$(plugin-objs): $(obj)/%.o: $(src)/%.c FORCE
+$(plugin-objs): $(obj)/%.o: $(src)/%.c $(objdir)/include/generated/utsrelease.h FORCE
$(call if_changed_dep,plugin_cxx_o_c)
Both "include/generated/utsrelease.h" and "scripts" were same-level
deps, so they were racing.
--
Kees Cook
next prev parent reply other threads:[~2022-05-23 19:54 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-10 23:54 [PATCH] gcc-plugins: Change all version strings match kernel Kees Cook
2022-05-11 7:31 ` kernel test robot
2022-05-23 14:30 ` Guenter Roeck
2022-05-23 19:28 ` Kees Cook
2022-05-23 19:56 ` Guenter Roeck
2022-05-23 19:54 ` Kees Cook [this message]
2022-05-25 22:42 ` Anders Roxell
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=202205231251.39D012E@keescook \
--to=keescook@chromium.org \
--cc=alex.popov@linux.com \
--cc=linux-hardening@vger.kernel.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=masahiroy@kernel.org \
/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.