[PATCH v4.9] kexec_file: drop weak attribute from arch_kexec_apply_relocations[_add]

Greg KH gregkh at linuxfoundation.org
Thu Jun 30 06:20:32 PDT 2022


On Tue, Jun 28, 2022 at 09:12:48PM +0530, Naveen N. Rao wrote:
> commit 3e35142ef99fe6b4fe5d834ad43ee13cca10a2dc upstream.
> 
> Since commit d1bcae833b32f1 ("ELF: Don't generate unused section
> symbols") [1], binutils (v2.36+) started dropping section symbols that
> it thought were unused.  This isn't an issue in general, but with
> kexec_file.c, gcc is placing kexec_arch_apply_relocations[_add] into a
> separate .text.unlikely section and the section symbol ".text.unlikely"
> is being dropped. Due to this, recordmcount is unable to find a non-weak
> symbol in .text.unlikely to generate a relocation record against.
> 
> Address this by dropping the weak attribute from these functions.
> Instead, follow the existing pattern of having architectures #define the
> name of the function they want to override in their headers.
> 
> [1] https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=d1bcae833b32f1
> 
> [akpm at linux-foundation.org: arch/s390/include/asm/kexec.h needs linux/module.h]
> Link: https://lkml.kernel.org/r/20220519091237.676736-1-naveen.n.rao@linux.vnet.ibm.com
> Signed-off-by: Michael Ellerman <mpe at ellerman.id.au>
> Signed-off-by: Naveen N. Rao <naveen.n.rao at linux.vnet.ibm.com>
> Cc: "Eric W. Biederman" <ebiederm at xmission.com>
> Cc: <stable at vger.kernel.org>
> Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
> ---
>  arch/x86/include/asm/kexec.h |  7 +++++++
>  include/linux/kexec.h        | 26 ++++++++++++++++++++++----
>  kernel/kexec_file.c          | 18 ------------------
>  3 files changed, 29 insertions(+), 22 deletions(-)
> 

All now queued up, thanks.

greg k-h



More information about the kexec mailing list