]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
2008-02-03 Pavel Roskin <proski@gnu.org>
authorproski <proski@localhost>
Sun, 3 Feb 2008 18:04:36 +0000 (18:04 +0000)
committerproski <proski@localhost>
Sun, 3 Feb 2008 18:04:36 +0000 (18:04 +0000)
* 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.

ChangeLog
kern/i386/pc/startup.S

index c92168b9dd58bde1ddcfa789b33e0a1b57b0b2f7..62ad8d941c48ad325a109423e68defecb9550223 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -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.
index e4101a655f67b421e863f74db21755db5c602614..0bfe2b37db9f6f087c270d1da09b2683b0e3db8e 100644 (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