summaryrefslogtreecommitdiffstats
path: root/include/asm-generic
diff options
context:
space:
mode:
authorAndi Kleen <ak@linux.intel.com>2015-07-19 18:01:19 -0700
committerMichal Marek <mmarek@suse.com>2015-08-20 14:55:54 +0200
commit9bebe9e5b0f3109a14000df25308c2971f872605 (patch)
tree6530bb61af97d7db31e5f154cdd4950de3a9391c /include/asm-generic
parent3c0561e0043fe870426b445890ab93204332ae39 (diff)
downloadop-kernel-dev-9bebe9e5b0f3109a14000df25308c2971f872605.zip
op-kernel-dev-9bebe9e5b0f3109a14000df25308c2971f872605.tar.gz
kbuild: Fix .text.unlikely placement
When building a kernel with .text.unlikely text the unlikely text for each translation unit was put next to the main .text code in the final vmlinux. The problem is that the linker doesn't allow more specific submatches of a section name in a different linker script statement after the main match. So we need to move them all into one line. With that change .text.unlikely is at the end of everything again. I also moved .text.hot into the same statement though, even though that's not strictly needed. Signed-off-by: Andi Kleen <ak@linux.intel.com> Signed-off-by: Michal Marek <mmarek@suse.com>
Diffstat (limited to 'include/asm-generic')
-rw-r--r--include/asm-generic/vmlinux.lds.h4
1 files changed, 1 insertions, 3 deletions
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
index 8bd374d..1781e54 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -412,12 +412,10 @@
* during second ld run in second ld pass when generating System.map */
#define TEXT_TEXT \
ALIGN_FUNCTION(); \
- *(.text.hot) \
- *(.text .text.fixup) \
+ *(.text.hot .text .text.fixup .text.unlikely) \
*(.ref.text) \
MEM_KEEP(init.text) \
MEM_KEEP(exit.text) \
- *(.text.unlikely)
/* sched.text is aling to function alignment to secure we have same
OpenPOWER on IntegriCloud