summaryrefslogtreecommitdiff
path: root/kernel.ld
diff options
context:
space:
mode:
authorFrans Kaashoek2018-09-29 08:30:50 -0400
committerFrans Kaashoek2018-09-29 08:34:41 -0400
commit3bfcaeaf015ffe0d92937c023e9a0086909a0161 (patch)
treeda9f7348ceff53f913ce82209e91959a8c347ebd /kernel.ld
parent322990649b35c893931a9ce67d4ccb25883c7446 (diff)
Make sysexit and trapret paths the same, so that forkret can return through
either path. This helped tracking down a bug: use 144 instead of 32 to find cs in trapframe so that gs is correctly saved and restored. For good measure update linker script, because newer versions of GCC sometimes places symbols passed end.
Diffstat (limited to 'kernel.ld')
-rw-r--r--kernel.ld7
1 files changed, 4 insertions, 3 deletions
diff --git a/kernel.ld b/kernel.ld
index e78fd38..11dc98f 100644
--- a/kernel.ld
+++ b/kernel.ld
@@ -41,9 +41,10 @@ SECTIONS
.data : {
*(.data)
}
- PROVIDE(edata = .);
- .bss : {
+ bss : {
+ PROVIDE(edata = .);
*(.bss)
+ *(COMMON)
+ PROVIDE(end = .);
}
- PROVIDE(end = .);
}