Re: Help needed adding modules to the boot image

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Rebecca,

	When I compiled a newer e1000.o module for a 7.3 kickstart, I found the
needed clue here:
http://www.linuxmanagers.org/pipermail/linuxmanagers/2002-September/000731.html

In short, after you have booted up using the BOOT kernel, before you
compile the driver, it was necessary to edit /boot/kernel.h:
changing:
 #define __BOOT_KERNEL_UP 1   
to:
#define __BOOT_KERNEL_UP 0
and adding:
#ifndef __BOOT_KERNEL_BOOT
#define __BOOT_KERNEL_BOOT 1
#endif

Again, this was for 7.3. I don't know for sure that it will solve your
problem...

-Ed


On Fri, 2003-03-21 at 14:42, Rebecca.R.Hepper@xxxxxxxxxxx wrote:
> Hello all,
> 
> I posted a few notes on this subject back on Oct '02.   I never got the
> problem resolved and now I am revisiting it.   Unfortunately, I am not
> having any more luck this time around.  I finally decided one last post to
> the kickstart list asking for help, then if I don't get it, I am giving up
> for good!!
> 
> I am doing a RedHat 7.1 kickstart.  The e100.o module that comes with the
> bootnet.img is too old to work with my motherboard.  So, I need to put an
> updated e100.o module onto my kickstart floppy.  I compile the e100.o
> module under the BOOT floppy, add it to the bootnet.img, create a floppy
> and try to kickstart.  I end up with the following message on my Alt-F3
> window:
> 
> * going to insmod e100.o (path is null)
> /tmp/e100.o : unresolved_symbol __io_virt_debug
> /tmp/e100.o : unresolved_symbol __netdev_watchdog_up
> /tmp/e100.o : unresolved_symbol eth_type_trans
> /tmp/e100.o : unresolved_symbol __kfree_skb
> /tmp/e100.o : unresolved_symbol alloc_skb
> /tmp/e100.o : unresolved_symbol init_etherdev
> /tmp/e100.o : unresolved_symbol skb_under_panic
> plus about 12 more unresolved symbols
> * No appropriate device for kickstart method is available
> 
> I have listed my steps below.  If anyone has any suggestions, they would
> greatly be appreciated!!
> 
> First, I compile my e100.o module under the BOOT kernel with the following
> steps:
> 1) Install the BOOT kernel RPM --> kernel-BOOT-2.4.2-2.i386.rpm
> 2) Install the kernel source RPM --> kernel-source-2.4.2-2.i386.rpm
> 3) Copy the BOOT config file to the kernel source directory
>       cp /usr/src/linux-2.4.2/configs/kernel-2.4.2-2-i386-BOOT.config
> /usr/src/linux-2.4.2/.config
> 4) Configure the kernel source tree
>      cd /usr/src/linux-2.4.2
>      make clean
>      make dep
> 5) Alter the Makefile in the e100 module src directry (I previously grabbed
> the e100-2.1.24.tar.gz  file from the Intel site and untarred it).
> Change the KSP defines as shown below:
>      KSP := /usr/src/linux-2.4.2
> 6) Make the module
> 
> 
> My steps for altering the bootnet.img compiled from various posts on the
> kickstart list:
> 
> Setup
> 1.  Make the following directories:
> /tmp/boot
> /tmp/boot/custom_img
> /tmp/boot/initrd_img
> /tmp/boot/modules
> 2.  Copy the bootnet.img to /tmp/boot. Bootnet.img can be grabbed from CVS
> or RedHat CD #1.
> 3.  Rename the bootnet.img to custom.img
> 
> Mount and decompress the files from the boot image
> 1.  Move into the working directory
>     cd /tmp/boot
> 2.  Mount the custom.img as a filesystem mount
>     mount -o loop custom.img custom_img
> 3.  Decompress
>     gzip -dc custom_img/initrd.img > initrd.ext2
> 4.  Mount initrd.ext2 as a filesystem mount
>      mount -o loop initrd.ext2 initrd_img
> 5.  Get the modules
>      gzip -dc initrd_img/modules/modules.cgz >modules.cpio
> 6.  Extract the cpio archive
>      cd /tmp/boot/modules
>      cpio -idumv < /tmp/boot/modules.cpio
> 
> Get the new modules in place
> 1.  Copy the new e100.o module to /tmp/boot/modules/2.4.2-2BOOT
> 2.  Remove unwanted modules in /tmp/boot/modules/2.4.2-2BOOT .  I removed
> hid.o, sis900.o, hp100.o and de4x5.0
> 3.  Edit /tmp/boot/initrd_img/modules/module-info Remove information on the
> modules I deleted.
> 4.  Edit /tmp/boot/initrd_img/modules/modules.dep
> 5.  Edit /tmp/boot/initrd_img/modules/pcitable Updated with information on
> the new e100.o module
> 
> Rebuild the boot image
> 1.  Get into the modules directory
>      cd /tmp/boot/modules
> 2.  Create new modules.cpio file
>      find 2.4.2-2BOOT -print -depth |cpio -H crc -ovF modules.cpio 2>
> /dev/null
> 3.  Compress the file
>      gzip -S .cgz modules.cpio
> 4.  Remove the old modules.cgz
>      rm /tmp/boot/initrd_img/modules/modules.cgz
> 5.  Move the new modules file into place
>      mv modules.cpio.cgz /tmp/boot/initrd_img/modules/modules.cgz
> 6.  Get into the boot directory
>      cd /tmp/boot/initrd_img
> 7.  This is an important step if the floppy is full. The ext2 partition has
> junk left over from the removed files. It will not compress and fit on the
> floppy without zeroing unused bits to improve compression ratio. You will
> get an error that says "No Space Left on Device" -- just continue on.
>      touch zerofile
>      cat /dev/zero > zerofile
>      rm -f zerofile
> 8.  Move directories again
>      cd /tmp/boot
> 9.  Unmount the initrd filesystem
>      umount initrd_img
> 10.  Recompress it
>      gzip initrd.ext2
> 11.  Remove old initrd.img
>      rm custom_img/initrd.img
> 12.  Place new initrd on boot image
>      mv initrd.ext2.gz custom_img/initrd.img
> 13.  Remove unneeded *.msg files from /tmp/boot/custom_img
> 14.  Copy your syslinux.cfg and boot.msg files to /tmp/boot/custom_img
> 15.  Unmount the bootnet filesystem
>      umount custom_img
> 
> Place the custom.img on the boot floppy
> 1.  custom.img is located in /tmp/boot. This is the file that will need to
> be copied to a floppy in order to create a kickstart floppy.
>      dd if=custom.img of=/dev/fd0
> 2.  Mount the floppy and copy the ks.cfg to it.
> 
> 
> 
> 
> _______________________________________________
> Kickstart-list mailing list
> Kickstart-list@xxxxxxxxxx
> https://listman.redhat.com/mailman/listinfo/kickstart-list
> 






[Index of Archives]     [Red Hat General]     [CentOS Users]     [Fedora Users]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]

  Powered by Linux