summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Wildt <patrick@cvs.openbsd.org>2018-02-10 07:02:22 +0000
committerPatrick Wildt <patrick@cvs.openbsd.org>2018-02-10 07:02:22 +0000
commit4fa23ea6668067385f2bbbcec8d59f39a3bbe243 (patch)
tree425c0b66dac916d3422e45804bc552984dd4196a
parent54320fb0cfb4210ecdf2452e0c3ddfe588532ad8 (diff)
Supplying entropy from etext has created a regression on arm where we
get an alignment fault while copying the data. Turns out that since we have .rodata in the text segment, it's very easily possible that etext remains unaligned. Work around this by word-aligning etext. The next step is to split .rodata out of the text segment. ok deraadt@
-rw-r--r--sys/arch/arm/conf/kern.ldscript3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/arch/arm/conf/kern.ldscript b/sys/arch/arm/conf/kern.ldscript
index 77fc9948f47..d844dd64a22 100644
--- a/sys/arch/arm/conf/kern.ldscript
+++ b/sys/arch/arm/conf/kern.ldscript
@@ -1,4 +1,4 @@
-/* $OpenBSD: kern.ldscript,v 1.1 2018/02/10 06:52:47 patrick Exp $ */
+/* $OpenBSD: kern.ldscript,v 1.2 2018/02/10 07:02:21 patrick Exp $ */
/* $NetBSD: ldscript.evbarm,v 1.2 2003/03/05 23:54:22 thorpej Exp $ */
OUTPUT_ARCH(arm)
@@ -24,6 +24,7 @@ SECTIONS
*(.glue_7t) *(.glue_7)
*(.rodata) *(.rodata.*)
} =0
+ . = ALIGN(4);
PROVIDE (__etext = .);
PROVIDE (_etext = .);
PROVIDE (etext = .);