[syslinux] Re: Possible bug with kernel decompressor.

Matthew Schumacher matt.s at aptalaska.net
Thu Jul 15 10:55:16 PDT 2004


Matthew Schumacher wrote:
 > List,
 >
 > I think I found a bug here because I can repeatably get the same kernel
 > (checked with md5sum) to decompress and to fail with the error:
 >
 > invalid compressed format (err=2)
 >
 >   --System halted
 >
 >
 > Here is how I can reproduce the problem:
 >
 > Boot 2.6.8-rc1
 > Run md5sum on 2.6.8-rc1 kernel
 > Turn power off (this is an embedded system with only ramdisk mounted)
 > Turn power on
 > Kernel fails to boot with "invalid compressed format (err=2)"
 > Restart system
 > Boot 2.4.26
 > Run md5sum on 2.6.8-rc1 kernel (matches md5sum above)
 > Shutdown properly
 > boot 2.6.8-rc1 (works fine)
 > Run md5sum on 2.6.8-rc1 kernel (matches md5sum above)
 >
 > So you see if I don't shutdown properly (which shouldn't be required for
 > an embedded system using a ramdisk) my kernel won't decompress itself
 > until I run another kernel and shutdown properly.  I know that the
 > kernel didn't change so something else must be causing it to fail.
 >
 > I call this a bug simply because a power failure could cause someone to
 > loose the ability to boot their machine.
 >
 > Here is the hardware:
 > Whistle Interjet (486 SBC)
 > 64MB of memory
 > IDE disk.
 > Can reproduce with linux  2.6.5, 2.6.6, 2.6.7, and 2.6.8-rc1
 > Both kernel images and the initrd image both live on a fat16 partition
 > and are started with syslinux.  I can reproduce this problem with any
 > version of syslinux I have tried.
 >
 > Please CC me in any replies since I am not on the list.
 >
 > Thanks,
 >
 > schu
 >
 >
 >
Tim Bird wrote:
> If I recall correctly, a number of read errors during the
> initial kernel loading can result in this error message
> (which means it is somewhat misleading.)  You may have
> to add some printks to narrow this down more (in both the
> 2.4 and 2.6 kernels)
> 
> Obviously there's something in the 2.4 code that handles
> the ungracefully-shutdown machine state better than 2.6.8.
> Or there might be some other difference between the syslinux
> boot of the 2.4 kernel and that of the 2.6.8 kernel.
> 

Sorry, for the long post, I'm more doing this for the archive than 
anything else so others can google instead of ask.

I thought that this might be something with syslinux too, but didn't go 
down that road because something in the new 2.6 kernel doesn't handle 
this as gracefully as the 2.4 kernel.

That said, I thought I would try a different boot loader so I installed 
grub on the system and it seems to work fine.

I should note that this hardware requires the linux mem/memmap= params 
because of the buggy memory detection in the bios so I was required to 
use the uppermem command in grub to make it detect the memory and put 
the initrd image in the right place.

So in the end it looks like it is a syslinux issue loading the initrd 
image but for some reason the 2.4 kernel seems to be just fine with 
whatever isn't working right.

I can troubleshoot more if someone wants to track this down, but at this 
point I have a work around and now it's documented on both lists.

Thanks,

schu




More information about the Syslinux mailing list