2.4.3 fails to boot with initrd - solved

From: Bill Davidsen (davidsen@tmr.com)
Date: Thu Apr 05 2001 - 20:45:22 EST


PROBLEM:

  kernel 2.4.3 will not boot on systems with initrd files

DESCRIPTION

  Building kernel 2.4.3 and attempting to boot it failed. The problem
turned out to be in the modutils-2.4.5 rpm for i386.

DETAIL

  After building the 2.4.3 kernel and moving the boot modules to the
initrd image, it was noted the the system stopped when trying to load
modules for the root filesystem device. First solution attempted was to
get the i386 rpm from kernel.org for the latest (2.4.5) modutils and
install, copying the insmod program to the initrd image.

  This fails, with the message "insmod: no such program" at boot.
Examination showed that the binary provided was not static linked. Got
the source from kernel.org and built. By default this still isn't static
linked! Changed the common Makfile to set LDFLAGS to "-static -s" and
built again. After install and copy to initrd image this resulted in a
bootable system.

  While it is possible to copy the libraries needed to the initrd image,
it becomes larger than the default ramdisk size (at least on my system).
And including the drivers in the kernel hurts portability and makes the
kernel too large to boot from floppy.

SYSTEMS AFFECTED

  Redhat 7.x and similar using configurations which have the root device
driver loaded from modules.

SUGGESTED FIX

  None needed, but the kernel "Changes" file should include a note that
people using initrd will need to rebuild them static along with the note
that a newer modutils is needed. Even for people who build their own
initrd files, this is NOT obvious!

-- 
bill davidsen <davidsen@tmr.com>
  CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.

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



This archive was generated by hypermail 2b29 : Sat Apr 07 2001 - 21:00:17 EST