Network doesn't start on Laptop boot (modular NIC / pcmcia kernel drivers)
For starters--Greetings--this is my first time using this forum.
Now for this little issue I'm having. Just to kick things off, I have been using Debian (mostly unstable) for a couple years now and am relatively attuned to its ins and outs. I always compile my own kernel (usually from SGI with XFS support patched in) instead of using a packaged one, though. I just started messing around with the 2.6 test kernel. With that I am also changing some ways I've had over the last few years, that being compiling most everything (except a few things such as sound or video) directly into the kernel instead of making them modular. Just learning and trying to make the kernel autoloader work has been an experience and I am still learning. One thing that I currently cannot make work *properly* is my network connectivity on bootup.
I have a Toshiba Tecra 8000 with an Intel Pro/100 PC Card NIC (32 bit). Ordinarily when I just compile the driver for the pcmcia socket and the NIC right into the kernel, it 'just works (tm)'. However, I am currently running the pcmcia driver (pcmcia_core and yenta_socket) as a module along with my Intel NIC (e100). Here is what is happening. It appears that the network interface is configured before the pcmcia service is starting, which isn't a good thing. As a result, the network card is not getting configured on boot. However, once I first log in, lsmod shows that e100, pcmcia_core, and yenta-socket are all running. A quck /etc/init.d/networking restart get's everything running fine for the network.
What needs to happen to get the module for the network interface running and the pcmcia stuff running before the network interface is configured in the boot process? I assume it probably has something to do with setting up a proper alias in a file under /etc/modutils. I did try making an alias for eth0 pointing to my e100 module: alias eth0 e100. I also added e100 to /etc/modules just for kicks, but that didn't do anything (I did see e100 load up before network interfaces were configured, but it still failed).
Thanks for any leads that may help me get this solved. I don't want to compile anything into the kernel that I don't have to, And I know I've seen where others made it work with these items as modules.
======
update: I made some progress here... I should have waited a bit on my post. When I add yenta_socket to my /etc/modules file (this is the only thing in here), everything loads up. Now, I know this works, but I'd rather take the approach of me not loading it up manually via this file, but rather the kernel module autoloader doing it. My biggest reason is I'm trying to learn and understand the kernel module autoloader and properly setting up aliases that get merged into /etc/modules.conf. So my guess is that if I setup a proper alias for yenta_socket that it will automatically load when the interface is configured and I won't have to manually have it load via /etc/modules.
This is my new question--how do I make the kernel know what to load so the socket is going when the network interface is configured?
Last edited by Swad; 11-07-2003 at 09:33 AM.
|