Re: make boot fails

Andrzej Krzysztofowicz (ankry@pg.gda.pl)
Tue, 11 May 1999 16:28:43 +0038 (MET DST)


> That should not happen. I was quite specifically told when I asked about
> this a few years back that bzImage should be able to handle kernels up to
> 16MB in size. >scratches his head<
>
> > There is a check in arch/i386/boot/build.c that do not allow to build
> > a kernel which is greater than 1MB-16B (0xffff * 16 bytes)
>
> Weird. My uncompressed kernel image after compiling the sources is > 1MB
> in size and when I use bzImage, it is compressed down to 620k.

This check is done for *compressed* kernel with bootsect.o/setup.o appended.
The 16 bit value for kernel size

syssize:
.word SYSSIZE

is used by code from bootsect.S (and setup.S for bzimage). It is 16 bit
as the loader code use 16-bit registers.

> > Do you know any patch that allows to build and boot a kernel of size
> > ~1.3 MB directly from floppy, without lilo/loadlin ?
>
> In theory you should be able to - that's what the bootsect.s stuff is
> compiled into the start of the kernel image is for. I believe you could
> use dd if=vmlinux of=/dev/fd0, and try booting.

As I mentioned above: bootsect.S/setup.S code works for kernel files less
than 1MB only. And it is not easy to be modified as bootsect.o must be
less than 512 bytes, setup.o must be located on the first track ( <4kB ),
etc...

Also backward compatibility problems may appear.

Cheers
Andrzej

--
=======================================================================
  Andrzej M. Krzysztofowicz               ankry@mif.pg.gda.pl
  phone (48)(58) 347 14 61
Faculty of Applied Phys. & Math.,   Technical University of Gdansk

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