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

Kernel versions and module loading



Hi,

I have a woody laptop and upgraded the kernel to 2.4.18. The new kernel uses the yenta_socket and tulip for the ethernet card whereas with the 2.2.x kernel used the tulip_cb driver.

Now if I try to boot the old kernel the network stuff won't work right. Here is what I found. The following kernel related things all have version numbers:
/boot/vmlinuz-<version>
/boot/System.map-<version>
/boot/initrd.img-<version> I gather for pre file system mounted module loading e.g. ext3
/lib/modules/<version>

It seems to me that there should be seperate /etc/modules-<version> files as well as that seems to be the only thing stopping seemless booting from version to version. At least at first blush.

The /etc/init.d/modutils script is what loads the modules and prints the 'Calculating module dependencies' line in the boot sequence. It calls depmod -a which creates the /lib/modules/<version>/modules.dep file AFAIK so it understands the kernel version. Later in the script it loops through the entries in /etc/modules and calls modprobe.

Couldn't this script use uname -r and then load /etc/modules-<version> where version comes from the uname -r output?

This I think would make everything work better you could have different kernel versions and custom versions etc. work together better. Comments and suggestions welcome.

Eric



Reply to: