Andrew Ip <[EMAIL PROTECTED]> writes:

> Eric,
> 
> > ftp://download.lnxi.com/pub/src/mkelfImage (or the LinuxBIOS cvs).
> > That is an easy test so start there.  To avoid breaking what works I have
> > been making very gradual changes, so I may not have fixed this one yet.
> > This is the first time I have heard these symptoms.

> Is there any doc which describes different version of mkelfImage?  

There should be.  In 1.14 I have started a CHANGES file, but
I need to back fill change information for the previous versions.

> IIRC, there
> was a critical change between mkelfImage-1.9 and later version.  


- 1.0 
  Initial release (supports vmlinux && bvmlinux)
  
- 1.1
  Fix for ramdisks and large amounts of memory with 2.2 series
  kernels.

- 1.2 
  Work around for some versions of ld not treating /dev/null and an
  empty file the same 

- 1.3 
  Minor bug fixes for working with the e820 memory map.

- 1.4 
  ???

- 1.5 
  Add support for bzImage 

- 1.6 
  Code cleanup in bzImage support.

- 1.7 
  Warn when I don't have information about the bootloader.
  Include a ELF compreressor that works on alpha && x86
  There is no good way to apply it though.

- 1.8 
  Move the ramdisk up even higher in memory.
  Better debugging of multiboot parameters
  Pass the correct values for a vga screen instead of telling the
  kernel we have EGA...

- 1.9 
  I changed LinuxBIOS (in LinuxBIOS) from passing it's information
  locally, to passing it in a global table that is always present.
  So that whoever needs that information can get it unfiltered.  And
  because it isn't being passed around it has less chance of
  becomming corrupt.  Globals for global information are good :)
  Version 1.9 goes out and finds that table.


- 1.10 
  Starting using the PHDRS directive which many versions of ld cannot
  handle correctly.  The symptom is generally a file that is 9MB in
  size.

  Start computing a checksum on the Image.

  Include an ELF note section in the image for out of band
  information (checksum, program name, etc).

- 1.11
  Bug fix to command line processing.
 
- 1.12
  Better firmware detection, and stripping excess symbols from the
  generated object.

- 1.13
  Include the version number in mkelfImage.

- 1.14
  Fixed the ip checksum code (only affected odd length tables),
  removed the use of PHDRS directive. 
  Note 1.14

.....
- 1.90 Development branch attempt to port to the alpha.
  Interesting code but it doesn't work, mkelfImage-1.0 won't stretch
  in that direction.
- elfboottools-2.0 Development branch better portability, and
  maintainability. Intersesting code that with a few good debug
  sessions will probably work.
- Kernel boot patches (agaisnt 2.5 todate) remove the need for
  mkelfImage, some stabler than mkelfImage.  Initrd support needs
  an external tool.
 
mkelfImage is a perl script that serves as a glorified Makefile.  The
code it inserts onto an image is interesting but the way it does it
was a cheap hack that I can't seem to get rid of...

The plan is to maintain the 1.x branch for the immediate future.  And
replace it with native kernel support, with elfbootools-2.x filling
in whatever gaps remain.

Native kernel support is more limited in scope allowing it to assume
more things, and be more stable.  For both etherboot and memtest86
this has proved a very manageable way to do things.  Of course those
projects accept patches :) 

As various pieces of LinuxBIOS become stable it leaves more time
to stablize the other bits.  mkelfImage has been one of the more
stable pieces

Eric

Reply via email to