All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nicolas Schier <nsc@kernel.org>
To: Sathvika Vasireddy <sv@linux.ibm.com>
Cc: linux-kernel@vger.kernel.org, linux-kbuild@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, nathan@kernel.org,
	masahiroy@kernel.org, kees@kernel.org, naveen@kernel.org,
	jpoimboe@kernel.org, peterz@infradead.org, npiggin@gmail.com,
	maddy@linux.ibm.com, segher@kernel.crashing.org,
	christophe.leroy@csgroup.eu, mingo@kernel.org,
	mpe@ellerman.id.au
Subject: Re: [RFC PATCH v4 5/6] kbuild: Add objtool integration for PowerPC feature fixups
Date: Mon, 16 Mar 2026 16:52:28 +0100	[thread overview]
Message-ID: <abgnPNNygOs6EnQc@levanger> (raw)
In-Reply-To: <20260316062237.30948-6-sv@linux.ibm.com>

[-- Attachment #1: Type: text/plain, Size: 2787 bytes --]

On Mon, Mar 16, 2026 at 11:52:36AM +0530, Sathvika Vasireddy wrote:
> Add build system support for PowerPC feature fixup processing:
> 
> - Add HAVE_OBJTOOL_FTR_FIXUP config option for architectures that support
>   build-time feature fixup processing
> - Integrate objtool feature fixup processing into vmlinux build
> 
> Suggested-by: Masahiro Yamada <masahiroy@kernel.org>
> Signed-off-by: Sathvika Vasireddy <sv@linux.ibm.com>
> ---
>  Makefile                 | 7 +++++++
>  scripts/Makefile.lib     | 4 ++--
>  scripts/Makefile.vmlinux | 3 ++-
>  3 files changed, 11 insertions(+), 3 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index 83ed80595378..861f5bec655c 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1467,6 +1467,13 @@ ifdef CONFIG_OBJTOOL
>  prepare: tools/objtool
>  endif
>  
> +# CONFIG_OBJTOOL and CONFIG_HAVE_OBJTOOL_FTR_FIXUP are unrelated, separate
> +# options. It was integrated in objtool in order to borrow the elf parser,
> +# but this is different from how the other objtool commands are used.
> +ifdef CONFIG_HAVE_OBJTOOL_FTR_FIXUP
> +prepare: tools/objtool
> +endif
> +
>  ifdef CONFIG_BPF
>  ifdef CONFIG_DEBUG_INFO_BTF
>  prepare: tools/bpf/resolve_btfids
> diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
> index e429d68b8594..c9478c717574 100644
> --- a/scripts/Makefile.lib
> +++ b/scripts/Makefile.lib
> @@ -179,10 +179,10 @@ cpp_flags      = -Wp,-MMD,$(depfile) $(NOSTDINC_FLAGS) $(LINUXINCLUDE)     \
>  
>  ld_flags       = $(KBUILD_LDFLAGS) $(ldflags-y) $(LDFLAGS_$(@F))
>  
> -ifdef CONFIG_OBJTOOL
> -
>  objtool := $(objtree)/tools/objtool/objtool
>  
> +ifdef CONFIG_OBJTOOL
> +
>  objtool-args-$(CONFIG_HAVE_JUMP_LABEL_HACK)		+= --hacks=jump_label
>  objtool-args-$(CONFIG_HAVE_NOINSTR_HACK)		+= --hacks=noinstr
>  objtool-args-$(CONFIG_MITIGATION_CALL_DEPTH_TRACKING)	+= --hacks=skylake
> diff --git a/scripts/Makefile.vmlinux b/scripts/Makefile.vmlinux
> index fcae1e432d9a..a1bef0638ecb 100644
> --- a/scripts/Makefile.vmlinux
> +++ b/scripts/Makefile.vmlinux
> @@ -65,7 +65,8 @@ ARCH_POSTLINK := $(wildcard $(srctree)/arch/$(SRCARCH)/Makefile.postlink)
>  # Final link of vmlinux with optional arch pass after final link
>  cmd_link_vmlinux =							\
>  	$< "$(LD)" "$(KBUILD_LDFLAGS)" "$(LDFLAGS_vmlinux)" "$@";	\
> -	$(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true)
> +	$(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true);	\
> +	$(if $(CONFIG_HAVE_OBJTOOL_FTR_FIXUP), $(objtool) --ftr-fixup --link $@, true)
>  
>  targets += vmlinux.unstripped .vmlinux.export.o
>  vmlinux.unstripped: scripts/link-vmlinux.sh vmlinux.o .vmlinux.export.o $(KBUILD_LDS) FORCE
> -- 
> 2.43.0
> 

Acked-by: Nicolas Schier <nsc@kernel.org>  # kbuild

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  reply	other threads:[~2026-03-16 15:54 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-16  6:22 [RFC PATCH v4 0/6] objtool: Fixup alternate feature relative addresses Sathvika Vasireddy
2026-03-16  6:22 ` [RFC PATCH v4 1/6] objtool/powerpc: Add build-time fixup of alternate feature branch targets Sathvika Vasireddy
2026-03-16  6:22 ` [RFC PATCH v4 2/6] objtool: Set ELF_F_LAYOUT flag to preserve vmlinux segment layout Sathvika Vasireddy
2026-03-16  6:22 ` [RFC PATCH v4 3/6] objtool: Fix "can't find starting instruction" warnings on vmlinux Sathvika Vasireddy
2026-03-16  6:22 ` [RFC PATCH v4 4/6] objtool/powerpc: Skip jump destination analysis and unnanotated intra-function call warnings for --ftr-fixup Sathvika Vasireddy
2026-03-16  6:22 ` [RFC PATCH v4 5/6] kbuild: Add objtool integration for PowerPC feature fixups Sathvika Vasireddy
2026-03-16 15:52   ` Nicolas Schier [this message]
2026-03-16  6:22 ` [RFC PATCH v4 6/6] powerpc: Enable build-time feature fixup processing by default Sathvika Vasireddy

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=abgnPNNygOs6EnQc@levanger \
    --to=nsc@kernel.org \
    --cc=christophe.leroy@csgroup.eu \
    --cc=jpoimboe@kernel.org \
    --cc=kees@kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=maddy@linux.ibm.com \
    --cc=masahiroy@kernel.org \
    --cc=mingo@kernel.org \
    --cc=mpe@ellerman.id.au \
    --cc=nathan@kernel.org \
    --cc=naveen@kernel.org \
    --cc=npiggin@gmail.com \
    --cc=peterz@infradead.org \
    --cc=segher@kernel.crashing.org \
    --cc=sv@linux.ibm.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.