summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@linux.intel.com>2010-03-30 16:31:47 -0700
committerH. Peter Anvin <hpa@linux.intel.com>2010-03-30 16:31:47 -0700
commit234f4a30ac426b535946325fa4125425e152e473 (patch)
treea6f7cd7209f942c5b26a7ce09a23a036888eb695
parent52c9d5ba2af4e1f77aa2486a2af2bcab0b0af52c (diff)
downloadsyslinux-234f4a30ac426b535946325fa4125425e152e473.tar.gz
core: move __jiffies and _IdleTimer to .data16syslinux-4.00-pre37
Move the __jiffies and _IdleTimer variables to the .data16 segment. This ensures that if do_idle is invoked very early that it will not jump off into a non-existent idle routine. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
-rw-r--r--core/idle.inc9
-rw-r--r--core/timer.inc6
2 files changed, 7 insertions, 8 deletions
diff --git a/core/idle.inc b/core/idle.inc
index 0da03eff..9677c822 100644
--- a/core/idle.inc
+++ b/core/idle.inc
@@ -70,13 +70,12 @@ do_idle:
.ret: ret
section .data16
- alignz 2
+ alignz 4
+ global _IdleTimer
+_IdleTimer dd 0
global NoHalt
NoHalt dw 0
hlt_err db 'ERROR: idle with IF=0', CR, LF, 0
- section .bss16
- global _IdleTimer
- alignb 4
-_IdleTimer resd 1
+ section .text16
diff --git a/core/timer.inc b/core/timer.inc
index 095e92ed..728812b1 100644
--- a/core/timer.inc
+++ b/core/timer.inc
@@ -40,7 +40,7 @@ timer_irq:
jmp 0:0
BIOS_timer_next equ $-4
- section .bss16
- alignb 4
+ section .data16
+ alignz 4
global __jiffies
-__jiffies resd 1 ; The actual timer variable
+__jiffies dd 0 ; The actual timer variable