Re: [PATCH] x86 boot enhancements, Clean up the 32bit entry points 6/11

From: Etienne Lorrain (etienne_lorrain@yahoo.fr)
Date: Thu Apr 18 2002 - 04:44:13 EST


You propose:
----------------------
diff -uNr linux-2.5.8.boot.heap/arch/i386/boot/compressed/head.S \
               
linux-2.5.8.boot.clean_32bit_entries/arch/i386/boot/compressed/head.S
--- linux-2.5.8.boot.heap/arch/i386/boot/compressed/head.S Wed Jul 5
13:03:12 2000
+++ linux-2.5.8.boot.clean_32bit_entries/arch/i386/boot/compressed/head.S
Wed Apr 17 \
00:37:46 2002 @@ -25,24 +25,30 @@
 
 #include <linux/linkage.h>
 #include <asm/segment.h>
+#include <asm/boot.h>
 
         .globl startup_32
         
 startup_32:
         cld
         cli
- movl $(__KERNEL_DS),%eax
- movl %eax,%ds
- movl %eax,%es
- movl %eax,%fs
- movl %eax,%gs
 
- lss SYMBOL_NAME(stack_start),%esp
- xorl %eax,%eax
-1: incl %eax # check that A20 really IS enabled
- movl %eax,0x000000 # loop forever if it isn't
- cmpl %eax,0x100000
- je 1b
+ /*
+ * Save the initial registers
+ */
+ movl %eax, eax
+ movl %ebx, ebx
-------------------

You want to change completely the protected mode entry point, that does
bother me, you know why (gujin). It is a simple (as simple as possible)
interface, available from a _very_ long time.

  I would say:
- Please initialise registers (segment registers) before using them, it
 is already complex enough. A bug there will be really difficult to find.
 Moreover that remind me another OS using registers (%bx) without
 initialising it first.
- Please keep the 'lss SYMBOL_NAME(stack_start),%esp' around, it is the
_only_ way to know if a kernel is "loaded low" or "loaded high", just in
case you want to write a bootloader which loads _any_ kernel, even 1.x
- Please stay compatible.

  Etienne.

___________________________________________________________
Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en français !
Yahoo! Mail : http://fr.mail.yahoo.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Apr 23 2002 - 22:00:20 EST