grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 1/2] Reduce the special variables area in kern/i386/pc/startup.S


From: Pavel Roskin
Subject: [PATCH 1/2] Reduce the special variables area in kern/i386/pc/startup.S
Date: Fri, 22 May 2009 00:36:32 -0400
User-agent: StGit/0.14.3.368.g58f7

ChangeLog:

        * include/grub/i386/pc/kernel.h (grub_boot_drive): Change type
        to grub_uint8_t.
        (grub_root_drive): Likewise.
        * kern/i386/pc/startup.S (grub_boot_drive): Change size to byte,
        remove alignment.
        (grub_root_drive): Change size to byte.
        (grub_start_addr): Remove.
        (grub_end_addr): Likewise.
        (grub_apm_bios_info): Likewise.

This patch will require trivial adjustments to the patches changing
END_SYMBOL.  We don't need END_SYMBOL for grub_end_addr.
---
 include/grub/i386/pc/kernel.h |    7 ++-----
 kern/i386/pc/startup.S        |   22 ++--------------------
 2 files changed, 4 insertions(+), 25 deletions(-)

diff --git a/include/grub/i386/pc/kernel.h b/include/grub/i386/pc/kernel.h
index b6650bc..5acc883 100644
--- a/include/grub/i386/pc/kernel.h
+++ b/include/grub/i386/pc/kernel.h
@@ -69,13 +69,10 @@ extern grub_int32_t grub_install_bsd_part;
 extern char grub_prefix[];
 
 /* The boot BIOS drive number.  */
-extern grub_int32_t EXPORT_VAR(grub_boot_drive);
+extern grub_uint8_t EXPORT_VAR(grub_boot_drive);
 
 /* The root BIOS drive number.  */
-extern grub_int32_t grub_root_drive;
-
-/* The end address of the kernel.  */
-extern grub_addr_t grub_end_addr;
+extern grub_uint8_t grub_root_drive;
 
 #endif /* ! ASM_FILE */
 
diff --git a/kern/i386/pc/startup.S b/kern/i386/pc/startup.S
index 8e8b661..fc83c4c 100644
--- a/kern/i386/pc/startup.S
+++ b/kern/i386/pc/startup.S
@@ -273,30 +273,12 @@ codestart:
  *  This is the area for all of the special variables.
  */
 
-       .p2align        2       /* force 4-byte alignment */
-
 VARIABLE(grub_boot_drive)
-       .long   0
+       .byte   0
 
 VARIABLE(grub_root_drive)
-       .long   0
+       .byte   0
 
-VARIABLE(grub_start_addr)
-       .long   _start
-
-VARIABLE(grub_end_addr)
-       .long   END_SYMBOL
-       
-VARIABLE(grub_apm_bios_info)
-       .word   0       /* version */
-       .word   0       /* cseg */
-       .long   0       /* offset */
-       .word   0       /* cseg_16 */
-       .word   0       /* dseg_16 */
-       .word   0       /* cseg_len */
-       .word   0       /* cseg_16_len */
-       .word   0       /* dseg_16_len */
-       
        .p2align        2       /* force 4-byte alignment */
        
 /*




reply via email to

[Prev in Thread] Current Thread [Next in Thread]