On Tue, 2009-03-31 at 01:06 +0900, Yoshinori K. Okuji wrote: > On Monday 30 March 2009 23:35:52 phcoder wrote: > > I confirm. I suppose that this check and message is bypassed with 32-bit > > loading mode. IMO grub2 should provide an equivlent of this check. We > > already have cpuid code. Does anyone know how to determine if kernel is > > i386 or amd64? > > I don't know any reliable way. Some candidates: > > - The ramdisk max value. On 32-bit, initrd may not be loaded onto over 2GB. > This is hard to change in Linux, so we can expect that this will not change.
If we are circumventing the standard Linux bootloader, perhaps we should communicate this to the Linux developers. To check architecture in GRUB, we need one bit of information, but that bit should be reliable. Also, it looks like Linux on x86_64 does an extra validation of the CPU in arch/x86/boot/compressed/head_64.S, but if the long mode is not supported, it hangs without printing an error message. -- Regards, Pavel Roskin _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel