All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michal Marek <mmarek@suse.com>
To: Nicholas Piggin <npiggin@gmail.com>, linux-kbuild@vger.kernel.org
Cc: linux-arch@vger.kernel.org, Sam Ravnborg <sam@ravnborg.org>,
	Stephen Rothwell <sfr@canb.auug.org.au>,
	Arnd Bergmann <arnd@arndb.de>, Nicolas Pitre <nico@linaro.org>,
	Segher Boessenkool <segher@kernel.crashing.org>,
	Alan Modra <amodra@gmail.com>
Subject: Re: [PATCH 3/6] kbuild: add arch specific post-link pass
Date: Tue, 16 Aug 2016 11:23:45 +0200	[thread overview]
Message-ID: <57B2DBA1.6090304@suse.com> (raw)
In-Reply-To: <1470910580-18458-4-git-send-email-npiggin@gmail.com>

Dne 11.8.2016 v 12:16 Nicholas Piggin napsal(a):
> Add an option for architectures to pass over modules after they are
> linked. powerpc will use this to check linker relocations for sanity,
> and possibly to fix up alternate instruction patch relocations.
> 
> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
> ---
> Since v1,
> - Switched to a more flexible arch makefile invocation.
> - Provide a powerpc patch to use it to help existing build issue
>   (rather than only justification being out-of-tree patch).
> 
>  Documentation/kbuild/makefiles.txt | 10 ++++++++++
>  arch/Kconfig                       |  7 +++++++
>  scripts/Makefile.modpost           |  3 +++
>  scripts/link-vmlinux.sh            |  4 ++++
>  4 files changed, 24 insertions(+)
> 
> diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt
> index 385a5ef..8581e38 100644
> --- a/Documentation/kbuild/makefiles.txt
> +++ b/Documentation/kbuild/makefiles.txt
> @@ -41,6 +41,7 @@ This document describes the Linux kernel Makefiles.
>  	   --- 6.8 Custom kbuild commands
>  	   --- 6.9 Preprocessing linker scripts
>  	   --- 6.10 Generic header files
> +	   --- 6.11 Post-link pass
>  
>  	=== 7 Kbuild syntax for exported headers
>  		--- 7.1 header-y
> @@ -1237,6 +1238,15 @@ When kbuild executes, the following steps are followed (roughly):
>  	to list the file in the Kbuild file.
>  	See "7.4 generic-y" for further info on syntax etc.
>  
> +--- 6.11 Post-link pass
> +
> +	CONFIG_BUILD_ARCH_POSTLINK can be selected in order to have
> +	arch/?/Makefile.postlink invoked on vmlinux and module.ko
> +	files after final link.
> +
> +	For example, powerpc uses this to check relocations on the
> +	linked vmlinux file.
> +
>  === 7 Kbuild syntax for exported headers
>  
>  The kernel includes a set of headers that is exported to userspace.
> diff --git a/arch/Kconfig b/arch/Kconfig
> index fc3f9e1..3a36ea8 100644
> --- a/arch/Kconfig
> +++ b/arch/Kconfig
> @@ -461,6 +461,13 @@ config CC_STACKPROTECTOR_STRONG
>  
>  endchoice
>  
> +config BUILD_ARCH_POSTLINK
> +	bool
> +	help
> +	  Select this if the architecture wants to have a Makefile invoked
> +	  on modules and vmlinux after they are linked. The architecture
> +	  must provide arch/?/Makefile.postlink
> +
>  config THIN_ARCHIVES
>  	bool
>  	help
> diff --git a/scripts/Makefile.modpost b/scripts/Makefile.modpost
> index 1366a94..1acaa20 100644
> --- a/scripts/Makefile.modpost
> +++ b/scripts/Makefile.modpost
> @@ -123,6 +123,9 @@ quiet_cmd_ld_ko_o = LD [M]  $@
>  
>  $(modules): %.ko :%.o %.mod.o FORCE
>  	$(call if_changed,ld_ko_o)
> +ifdef CONFIG_BUILD_ARCH_POSTLINK
> +	$(Q)$(MAKE) -f $(srctree)/arch/$(SRCARCH)/Makefile.postlink $@
> +endif

Why not simply branch off the existence of arch/*/Makefile.postlink and
drop the kconfig option?

Thanks,
Michal

  reply	other threads:[~2016-08-16  9:24 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-11 10:16 [PATCH 0/6 v2] kbuild changes, thin archives, --gc-sections Nicholas Piggin
2016-08-11 10:16 ` [PATCH 1/6] kbuild: allow architectures to use thin archives instead of ld -r Nicholas Piggin
2016-08-11 10:16 ` [PATCH 2/6] kbuild: allow archs to select link dead code/data elimination Nicholas Piggin
2016-08-11 10:16 ` [PATCH 3/6] kbuild: add arch specific post-link pass Nicholas Piggin
2016-08-16  9:23   ` Michal Marek [this message]
2016-08-17  4:43     ` Nicholas Piggin
2016-08-17  9:05       ` Michal Marek
2016-08-17  9:56       ` Sam Ravnborg
2016-08-18  0:17         ` Nicholas Piggin
2016-08-11 10:16 ` [PATCH 4/6] powerpc: switch to using thin archives Nicholas Piggin
2016-08-11 10:16 ` [PATCH 5/6] powerpc/64: use linker dead code elimination Nicholas Piggin
2016-08-11 10:16 ` [PATCH 6/6] powerpc: use the new post-link pass to check relocations Nicholas Piggin
2016-08-11 12:31 ` [PATCH 0/6 v2] kbuild changes, thin archives, --gc-sections Stephen Rothwell
2016-08-11 12:39 ` [PATCH] Xen: remove -fshort-wchar gcc flag Arnd Bergmann
2016-08-11 12:51   ` Jan Beulich
2016-08-11 12:51   ` [Xen-devel] " Jan Beulich
2016-08-11 14:01     ` Arnd Bergmann
2016-08-11 14:06       ` Jan Beulich
2016-08-11 14:06       ` Jan Beulich
2016-08-11 14:01     ` Arnd Bergmann
2016-08-24 17:18   ` [Xen-devel] " David Vrabel
2016-08-24 17:18   ` David Vrabel
2016-08-11 12:39 ` Arnd Bergmann
2016-08-11 13:55 ` [EXPERIMENTAL] enable thin archives and --gc-sections on ARM Arnd Bergmann
2016-08-11 20:01   ` Nicolas Pitre
2016-08-11 20:37     ` Arnd Bergmann
2016-08-11 21:05       ` Nicolas Pitre
2016-08-23  6:17 ` [PATCH 0/6 v2] kbuild changes, thin archives, --gc-sections Nicholas Piggin

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=57B2DBA1.6090304@suse.com \
    --to=mmarek@suse.com \
    --cc=amodra@gmail.com \
    --cc=arnd@arndb.de \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=nico@linaro.org \
    --cc=npiggin@gmail.com \
    --cc=sam@ravnborg.org \
    --cc=segher@kernel.crashing.org \
    --cc=sfr@canb.auug.org.au \
    /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.