Commit 1678e493 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'lto-v5.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux

Pull LTO fix from Kees Cook:
 "It seems that there is a bug in ld.bfd when doing module section
  merging.

  As explicit merging is only needed for LTO, the work-around is to only
  do it under LTO, leaving the original section layout choices alone
  under normal builds:

   - Only perform explicit module section merges under LTO (Sean
     Christopherson)"

* tag 'lto-v5.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
  kbuild: lto: Merge module sections if and only if CONFIG_LTO_CLANG is enabled
parents 6905b1dc 6a3193cd
...@@ -20,6 +20,7 @@ SECTIONS { ...@@ -20,6 +20,7 @@ SECTIONS {
__patchable_function_entries : { *(__patchable_function_entries) } __patchable_function_entries : { *(__patchable_function_entries) }
#ifdef CONFIG_LTO_CLANG
/* /*
* With CONFIG_LTO_CLANG, LLD always enables -fdata-sections and * With CONFIG_LTO_CLANG, LLD always enables -fdata-sections and
* -ffunction-sections, which increases the size of the final module. * -ffunction-sections, which increases the size of the final module.
...@@ -41,6 +42,7 @@ SECTIONS { ...@@ -41,6 +42,7 @@ SECTIONS {
} }
.text : { *(.text .text.[0-9a-zA-Z_]*) } .text : { *(.text .text.[0-9a-zA-Z_]*) }
#endif
} }
/* bring in arch-specific sections */ /* bring in arch-specific sections */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment