2008-02-03 Pavel Roskin <proski@gnu.org>

* a/kern/i386/pc/startup.S (grub_chainloader_real_boot): Pop
	%edx and %esi from stack only after grub_gate_a20() is called.
	grub_gate_a20() clobbers %edx.
This commit is contained in:
proski 2008-02-03 18:04:36 +00:00
parent f2a76e1d19
commit fa370ea61b
2 changed files with 10 additions and 4 deletions

View file

@ -1,3 +1,9 @@
2008-02-03 Pavel Roskin <proski@gnu.org>
* a/kern/i386/pc/startup.S (grub_chainloader_real_boot): Pop
%edx and %esi from stack only after grub_gate_a20() is called.
grub_gate_a20() clobbers %edx.
2008-02-03 Yoshinori K. Okuji <okuji@enbug.org>
* configure.ac (AC_INIT): Bumped to 1.96.

View file

@ -594,16 +594,16 @@ FUNCTION(grub_chainloader_real_boot)
call EXT_C(grub_dl_unload_all)
/* Turn off Gate A20 */
xorl %eax, %eax
call EXT_C(grub_gate_a20)
/* set up to pass boot drive */
popl %edx
/* ESI must point to a partition table entry */
popl %esi
/* Turn off Gate A20 */
xorl %eax, %eax
call EXT_C(grub_gate_a20)
call prot_to_real
.code16
ljmp $0, $GRUB_MEMORY_MACHINE_BOOT_LOADER_ADDR