diff options
author | H. Peter Anvin <hpa@zytor.com> | 2009-08-03 21:46:57 -0700 |
---|---|---|
committer | Liu Aleaxander <Aleaxander@gmail.com> | 2009-08-04 16:18:08 +0800 |
commit | 030c84480f275e2aa8c98c08de187185d522d252 (patch) | |
tree | cf2355ff15534f6b04aa326f53aae86ac61d940b | |
parent | fa630ef0692757d381eef9f62ac69ccc00139d07 (diff) | |
download | pxelinux-030c84480f275e2aa8c98c08de187185d522d252.tar.gz pxelinux-030c84480f275e2aa8c98c08de187185d522d252.tar.xz pxelinux-030c84480f275e2aa8c98c08de187185d522d252.zip |
core: pxelinux: InitStack must be in .earlybss
InitStack is stored to before the .bss segments are zeroed; therefore
it needs to live in the .earlybss segment rather than .bss16.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
-rw-r--r-- | core/pxelinux.asm | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/core/pxelinux.asm b/core/pxelinux.asm index b4a61e94..a7bed544 100644 --- a/core/pxelinux.asm +++ b/core/pxelinux.asm @@ -166,18 +166,22 @@ trackbufsize equ 8192 trackbuf resb trackbufsize ; Track buffer goes here ; ends at 2800h + ; These fields save information from before the time + ; .bss is zeroed... must be in .earlybss + global InitStack +InitStack resd 1 + section .bss16 global Files alignb open_file_t_size Files resb MAX_OPEN*open_file_t_size alignb FILENAME_MAX - global BootFile, PathPrefix, DotQuadBuf, IPOption, InitStack + global BootFile, PathPrefix, DotQuadBuf, IPOption BootFile resb 256 ; Boot file from DHCP packet PathPrefix resb 256 ; Path prefix derived from boot file DotQuadBuf resb 16 ; Buffer for dotted-quad IP address IPOption resb 80 ; ip= option buffer -InitStack resd 1 ; Pointer to reset stack (SS:SP) PXEStack resd 1 ; Saved stack during PXE call alignb 4 |