Modules won't work or install after Kernel Updates
Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
Modules won't work or install after Kernel Updates
I have been trying to install Linux for about a month now. I have finally gotten RH9 on hda and Windows XP on hdb after some partitioning nightmares I will NOT go into...
I have been having trouble however with the modules thing. Been trying to make my sound card and my modem work, and since RH9 didn't come with the drivers this has been loads of fun. So far I have started from scratch about 7 times (I lost count). Anyway, I was able to get my modem working fine using the module from linmodems. But to get my sound rolling I had to install a kernel update. The original was 2.4.20- 8 and it compiles after a fresh install as i686, even though everything else on my machine says i386. The update was 2.4.20-30.9.i686.rpm. After I rpm -ivh'd the update, I went ahead and did "make symlinks dep" and "make bzImage" and then I did "make install" and I did "make mr proper" After all was said and done this is what I have got now... my system boots with grub and there is a new line to boot from, I now have Linux 2.4.20-8, AND Linux 2.4.20-30.9 as seperate kernals... I still have Windows XP (thank GOD! I already lost it once during this debacle) When I boot in the "new" linux kernel my sound card works on its own..! Wow! but now my modem that was working fine earlier doesn't. So, I tried to reinstall the module for the modem. No go. Errors say that my Kernel and my source headers are not equal in value or something. So, I fugure that I have the old source and new kernel compiled on the same system.. I also figure I need the new source and that should fix it...WRONG! The new source won't install either! It's error message says that the key is bad? What ever that means... So now I am actually stuck and I don't want to reinstall again because I FINALLY got my sound card working (WITHOUT ALSA and this is a major plus). I am hoping there is some quick answer some guru out here can throw me - but if not I have already downloaded every single HOWTO and GUIDE I could find regarding these issues to read in the meantime. Here is the tech info about my machine in case it helps someone help me:
AMD 2400 Athlon
1gig DDR RAM
hd0- 40gig ATA100 carries Linux RH9on: /boot(ext3) /(ext3) /swap(ext3) also has 3 NTFS partitions and one primary FAT32 partition (grub is on the FAT32 primary that I use to make the system Dual bootable with Windows)
hd1- 80gig ATA133 Carries Windows XP single partition.
ATI Radeon 9000 64DDR
Winmodem( was using symlinked ltmodem driver pointing to ttyLTO = dev/modem)
VIA8322 integrated sound card (using Via82cxxx_audio.o drivers)
Epson usb CX5400 printer/scanner (can't find driver for this yet)
Logitech 4000 USB webcamera(can't find a driver for this either)
I also have a usb connecter to my cell phone that works to dail up on Windows. Does anyone know how to do this in Linux?
Last but not least I have a Phillips Boom Box CD player Radio thing that connects to my USB using "PClink" this becomes a "sound card" in Windows and I can play my Mp3's out of the speakers on it. Obviously I havn't been able to get this working on linux yet either...Any clues?
Mainly I want to know how to get the modem working again and if I need to reinstall the entire system again to do this or not.
The modules must match the kernel version. The modules for different kernel versions
are stored in "/lib/modules/[kernel-version]/...". When you boot the new kernel there
is no such dir. It is created with these make commands in the kernel dir;
# make modules
# make modules_install
This is described in the README in the kernel dir and Documentation/modules.txt.
Two things come to mind. First, I would double-check the .config file to make sure that the network card driver you need is actually being built during the compile. Since you didn't receive any error messages during the actual kernel and module compiling (you didn't, right?), the other possibility might be that the "make modules_install" didn't actually install the modules completely. I have run into several situations where "make modules_install" finished without any error messages but didn't completely install the new modules. The only way I knew something was amiss was because the "make modules_install" seemed to go a lot quicker than normal. Well, that and the fact that after I tried booting into the new kernel, I got the really descriptive "Kernel Panic" error message.
I don't recall any error messages, unless they zoomed by very fast....but I would assume that the compile process would have halted on errors, or it would give me an error summary at the end of the compile...
The only error message I was really getting was
"delaying eth0 initialization.....failed"
First to answer your question, the "Error 1" and "Error 2" (I believe) have to do with the fact that when you compile something (kernel, modules, apps, etc.) you can compile things recursively. Meaning that if Module A starts compiling and realizes it need Module B to compile first, it will start compiling Module B. Now you are one level deep from the first. Thus if Module B errored out while trying to compile, the error listed would be 1. Because Module B didn't compile and Module A depends on it, Module A errors out, too. Thus Error 2. If you were 3 levels deep, I'd expect a chain of Errors back up to the top level. However, this is a guess.
(On second thought, the "Error" levels may also have something to do with the directory structure of the project, too. If you've got programs to compile in various levels of directories, as the compiler enters and leaves each directory level, that may correspond to the string of Error numbers you get if something goes amiss.)
Now, how to address your actual problem. I have run into this in the past. What I have done is to first assess whether the module in question is actually even needed on my computer (i.e. Do I even have that piece of hardware installed?). If not, then what I normally do is go through the entire build process again (for whatever reason, I have had little success rebuilding if I didn't start from the original freshly extracted tarball), except this time during the "make menuconfig" process, I would completely disable the module in question. Don't build it into the kernel. Don't build it as a module.
The upside to this process is that you will eventually build a kernel and modules that will work. The downside is that this method is sort of trial and error and might take you a while to find all of the points of failure. When you compile an application, it goes until it finishes or errors out. Unfortunately if there is still stuff left to compile and it errors out, the process stops. I helped build a kernel and modules for a SuSE system at work and it took us about 4 or 5 tries to finally get the modules that weren't compiling correctly identified and removed from the .config file. Someone else might have a better suggestion.
If the module in question IS something you need support for on your computer, then you're best bet would be to try Google and see if someone else has had a similar problem. Someone may have even posted a solution.
I'm sure there are some differences between the two ("oldconfig" vs. "menuconfig"), but I do know that if the .config file is in the /usr/src/linux directory before running "make menuconfig", it will load the values in the .config file. Other than that, not sure what the differences are.
Perhaps once you've got your .config file tailored to your machine, "oldconfig" might be faster after all.