aboutsummaryrefslogtreecommitdiff
path: root/skiboot.lds.S
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2014-11-18 19:33:51 +1100
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2014-11-18 19:33:51 +1100
commitc38c2e8d08e03e905b72334747a9f8795f3526c2 (patch)
tree94a7e5ec6124998eee1d1a27577370b03304c4e6 /skiboot.lds.S
parent94796c825b0708c8c86e7135d60c435fc3fd00a5 (diff)
downloadskiboot-c38c2e8d08e03e905b72334747a9f8795f3526c2.zip
skiboot-c38c2e8d08e03e905b72334747a9f8795f3526c2.tar.gz
skiboot-c38c2e8d08e03e905b72334747a9f8795f3526c2.tar.bz2
Add symbolic backtraces and expose skiboot map to Linux
We use a double link technique, doing a first pass with a .o containing a dummy symbol map, then re-linking with a new .o Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'skiboot.lds.S')
-rw-r--r--skiboot.lds.S12
1 files changed, 11 insertions, 1 deletions
diff --git a/skiboot.lds.S b/skiboot.lds.S
index 4e905f8..a54ff5f 100644
--- a/skiboot.lds.S
+++ b/skiboot.lds.S
@@ -125,7 +125,17 @@ SECTIONS
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
- . = ALIGN(0x1000);
+ . = ALIGN(0x10);
+ .sym_map : {
+ __sym_map_start = . ;
+ KEEP(*(.sym_map))
+ __sym_map_end = . ;
+ KEEP(*(.sym_map))
+ }
+
+ /* We locate the BSS at 1M to leave room for the symbol map */
+ . = 0x100000;
+
_sbss = .;
.bss : {
*(.bss*)