aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/localboot.inc3
-rw-r--r--core/pxelinux.asm1
-rw-r--r--core/runkernel.inc2
3 files changed, 6 insertions, 0 deletions
diff --git a/core/localboot.inc b/core/localboot.inc
index ae54737a..6709b3b4 100644
--- a/core/localboot.inc
+++ b/core/localboot.inc
@@ -31,6 +31,9 @@ local_boot:
mov gs,dx
mov si,localboot_msg
call writestr
+ push ax
+ call cleanup_hardware
+ pop ax
cmp ax,-1
je .int18
diff --git a/core/pxelinux.asm b/core/pxelinux.asm
index b2745146..2fb0e08e 100644
--- a/core/pxelinux.asm
+++ b/core/pxelinux.asm
@@ -864,6 +864,7 @@ local_boot:
mov si,localboot_msg
call writestr_early
; Restore the environment we were called with
+ call cleanup_hardware
lss sp,[InitStack]
pop gs
pop fs
diff --git a/core/runkernel.inc b/core/runkernel.inc
index 8bfc8b8d..ac00342c 100644
--- a/core/runkernel.inc
+++ b/core/runkernel.inc
@@ -461,6 +461,8 @@ run_linux_kernel:
; Set up segment registers and the Linux real-mode stack
; Note: ds == the real mode segment
;
+ call cleanup_hardware
+
cli
mov ax,ds
mov ss,ax