summaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/vmlinux.lds.S
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2016-01-02 14:57:18 +0100
committerMarc Zyngier <marc.zyngier@arm.com>2016-02-29 19:34:12 +0100
commit1a61ae7af4d65ee311a737d550da6cf92a3aea4c (patch)
tree7376af842c29835f2c7d7e2bdc87fa5f405f06b2 /arch/arm/kernel/vmlinux.lds.S
parentarm/arm64: KVM: Add hook for C-based stage2 init (diff)
downloadlinux-1a61ae7af4d65ee311a737d550da6cf92a3aea4c.tar.xz
linux-1a61ae7af4d65ee311a737d550da6cf92a3aea4c.zip
ARM: KVM: Move the HYP code to its own section
In order to be able to spread the HYP code into multiple compilation units, adopt a layout similar to that of arm64: - the HYP text is emited in its own section (.hyp.text) - two linker generated symbols are use to identify the boundaries of that section No functionnal change. Acked-by: Christoffer Dall <christoffer.dall@linaro.org> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Diffstat (limited to 'arch/arm/kernel/vmlinux.lds.S')
-rw-r--r--arch/arm/kernel/vmlinux.lds.S6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S
index 8b60fde5ce48..b4139cbbbdd9 100644
--- a/arch/arm/kernel/vmlinux.lds.S
+++ b/arch/arm/kernel/vmlinux.lds.S
@@ -18,6 +18,11 @@
*(.proc.info.init) \
VMLINUX_SYMBOL(__proc_info_end) = .;
+#define HYPERVISOR_TEXT \
+ VMLINUX_SYMBOL(__hyp_text_start) = .; \
+ *(.hyp.text) \
+ VMLINUX_SYMBOL(__hyp_text_end) = .;
+
#define IDMAP_TEXT \
ALIGN_FUNCTION(); \
VMLINUX_SYMBOL(__idmap_text_start) = .; \
@@ -108,6 +113,7 @@ SECTIONS
TEXT_TEXT
SCHED_TEXT
LOCK_TEXT
+ HYPERVISOR_TEXT
KPROBES_TEXT
*(.gnu.warning)
*(.glue_7)