All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: Tom Saeger <tom.saeger@oracle.com>
Cc: Nick Desaulniers <ndesaulniers@google.com>,
	Masahiro Yamada <masahiroy@kernel.org>,
	Nicholas Piggin <npiggin@gmail.com>,
	Michal Marek <michal.lkml@markovi.net>,
	Nathan Chancellor <nathan@kernel.org>,
	Nick Clifton <nickc@redhat.com>,
	Jose Marchesi <jose.marchesi@oracle.com>,
	stable@vger.kernel.org, linux-kbuild@vger.kernel.org
Subject: Re: [PATCH 5.15 5.10 5.4 1/1] arm64: fix Build ID if CONFIG_MODVERSIONS
Date: Fri, 9 Dec 2022 07:50:25 +0100	[thread overview]
Message-ID: <Y5Lasd7oID6kIiwM@kroah.com> (raw)
In-Reply-To: <20221208233106.jvss2x4unqvijhgg@oracle.com>

On Thu, Dec 08, 2022 at 05:31:06PM -0600, Tom Saeger wrote:
> On Thu, Dec 08, 2022 at 09:34:40PM +0100, Greg Kroah-Hartman wrote:
> > On Tue, Dec 06, 2022 at 01:43:08PM -0700, Tom Saeger wrote:
> > > Backport of: 0d362be5b142 ("Makefile: link with -z noexecstack --no-warn-rwx-segments")
> > > breaks arm64 Build ID when CONFIG_MODVERSIONS=y.
> > > 
> > > CONFIG_MODVERSIONS adds extra tooling to calculate symbol versions.
> > > This kernel's KBUILD tooling uses both
> > > relocatable (-r) and (-z noexecstack) to link head.o
> > > which results in ld adding a .note.GNU-stack section.
> > > Final linking of vmlinux should add a .NOTES segment containing the
> > > Build ID, but does NOT if head.o has a .note.GNU-stack section.
> > > 
> > > Selectively remove -z noexecstack from head.o's KBUILD_LDFLAGS to
> > > prevent .note.GNU-stack from being added to head.o.  Final link of
> > > vmlinux then properly adds .NOTES segment containing Build ID that can
> > > be read using tools like 'readelf -n'.
> > > 
> > > Cc: <stable@vger.kernel.org> # 5.15, 5.10, 5.4
> > > Signed-off-by: Tom Saeger <tom.saeger@oracle.com>
> > > ---
> > >  arch/arm64/kernel/Makefile | 5 +++++
> > >  1 file changed, 5 insertions(+)
> > 
> > Why isn't this needed in Linus's tree?
> 
> 0d362be5b142 ("Makefile: link with -z noexecstack --no-warn-rwx-segments")
> 
> was merged after
> 7b4537199a4a ("kbuild: link symbol CRCs at final link, removing CONFIG_MODULE_REL_CRCS")
> 
> Linus's tree never had -z noexecstack with these same KBUILD rules.

Then it needs to say that, in detail, in this changelog please.

> > And why not cc: everyone involved in this, I would need acks from
> > maintainers to be able to accept this...
> 
> Fair request.
> 
> Between ~5.3 and 5.19-rc1 cherry-picking 
> 0d362be5b142 ("Makefile: link with -z noexecstack --no-warn-rwx-segments")
> and building arm64 with CONFIG_MODVERSIONS=y
> results in vmlinux missing Build ID
> 
> head.S is compiled to head.o
> head.o is linked (ld) with -r and -z noexecstack  which adds .note.GNU-stack section in head.o
> head.o is then linked again with vmlinux (resulting vmlinux is missing .NOTE segment)
> 
> 
> Can folks confirm/deny ld behavior is expected (arm64)?
> And whether the above patch would be an acceptable fix for these kernel
> versions?
> 
> repro test in cover letter: https://lore.kernel.org/all/cover.1670358255.git.tom.saeger@oracle.com/#r

Please resend, no need for a cover letter for just one patch, and
include all of the needed info in the changelog itself.

thanks,

greg k-h

  reply	other threads:[~2022-12-09  6:50 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-06 20:43 [PATCH 5.15 5.10 5.4 0/1] arm64: fix Build ID if CONFIG_MODVERSIONS Tom Saeger
2022-12-06 20:43 ` [PATCH 5.15 5.10 5.4 1/1] " Tom Saeger
2022-12-08 20:34   ` Greg Kroah-Hartman
2022-12-08 23:31     ` Tom Saeger
2022-12-09  6:50       ` Greg Kroah-Hartman [this message]
2022-12-09 17:58       ` Nick Desaulniers
2022-12-09 19:57         ` Tom Saeger

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=Y5Lasd7oID6kIiwM@kroah.com \
    --to=gregkh@linuxfoundation.org \
    --cc=jose.marchesi@oracle.com \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=masahiroy@kernel.org \
    --cc=michal.lkml@markovi.net \
    --cc=nathan@kernel.org \
    --cc=ndesaulniers@google.com \
    --cc=nickc@redhat.com \
    --cc=npiggin@gmail.com \
    --cc=stable@vger.kernel.org \
    --cc=tom.saeger@oracle.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.