Re: [PATCH 12/12] i386 boot: Add an ELF header to bzImage

From: H. Peter Anvin
Date: Wed Oct 04 2006 - 00:42:27 EST


Vivek Goyal wrote:

Hi Andrew,

Right now I don't have access to my test machine. Tomorrow morning,
very first thing I am going to try it out with your config file.

This patch just adds and ELF header to bzImage which is not even used
by grub.


Oh yes, it will be. See below.

So without this patch you are able to boot the kernel on your laptop?

Danger, Will Robinson. GRUB, Etherboot, and a whole bunch of other boot loaders will recognize an ELF binary and load it as such. They will typically load it as an executable (not a relocatable object) -- I doubt many of them check that appropriate part of the ELF header -- so unless your kernel can be safely loaded *AND RUN* in that mode this is not going to work.

The entrypoint is going to be a major headache, since the standard kernel is entered in real mode, whereas an ELF file will typically be entered in protected mode, quite possibly using the C calling convention to pass the command line as (argc, argv). God only knows how they're going to deal with an initrd.

It may very well be that the ELF magic number has to be obfuscated.

-hpa
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/