summaryrefslogtreecommitdiffstats
path: root/src/arch
diff options
context:
space:
mode:
authorMichael Brown2009-02-15 11:02:26 +0100
committerMichael Brown2009-02-15 11:02:26 +0100
commitce2aa66d39344fa5d6097607d6344ebaf5dabcf4 (patch)
treebd84097e33b0079743dd5aa290b674ecc4fc4c1c /src/arch
parent[xfer] Make consistent assumptions that xfer metadata can never be NULL (diff)
downloadipxe-ce2aa66d39344fa5d6097607d6344ebaf5dabcf4.tar.gz
ipxe-ce2aa66d39344fa5d6097607d6344ebaf5dabcf4.tar.xz
ipxe-ce2aa66d39344fa5d6097607d6344ebaf5dabcf4.zip
[i386] Add explicit ""aw", @nobits" declarations to stack sections
As reported by Stefan, commit 13d09e6 ("[i386] Simplify linker script and standardise linker-defined symbol names") breaks gdb, readelf and associated utilities. This is caused by the .stack section overwriting a block in the middle of the .debug_info section (despite being included in the .bss.textdata section in the output file, which apparently has the correct attributes for a .bss section). Fixed by adding explicit flags and type to the stack section declaration.
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/i386/core/stack.S2
-rw-r--r--src/arch/i386/core/stack16.S2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/arch/i386/core/stack.S b/src/arch/i386/core/stack.S
index c2d138aa..da66d239 100644
--- a/src/arch/i386/core/stack.S
+++ b/src/arch/i386/core/stack.S
@@ -4,7 +4,7 @@
* Internal stack
****************************************************************************
*/
- .section ".stack"
+ .section ".stack", "aw", @nobits
.align 8
.globl _stack
_stack:
diff --git a/src/arch/i386/core/stack16.S b/src/arch/i386/core/stack16.S
index 3380a083..d1251f06 100644
--- a/src/arch/i386/core/stack16.S
+++ b/src/arch/i386/core/stack16.S
@@ -4,7 +4,7 @@
* Internal stack
****************************************************************************
*/
- .section ".stack16"
+ .section ".stack16", "aw", @nobits
.align 8
.globl _stack16
_stack16: