I was gonna create a thread about this, but you already have one, so I'll add to it here, since my issue mirrors yours closely.
I have a cable connection that I share with a Linksys router. I connect to the ISP with dhcp (handled by the router) and our computers connect via the router. They each have static IPs, for port forewarding purposes. The network card in my machine is a ADM983 Linksys EtherFast 10/100. This card has a clone of the DEC 2104x chip, so the tulip driver works.
I have since updated my system with the 2.6.2-1mdk kernel (from cooker RPMs) and was wondering if the module was being called by the wrong kernel. I shouldn't have worried.
When I installed, I had networking. When I rebooted, i didn't. The card showed up with lspci. The module did not with lsmod. A quick "modprobe tulip" got me on the net. Or, conversely, I could 'create a new connection' with Mandrake control center and my settings were still there, ready for a few mouse clicks. So, the problem is autoloading of the module. I was about to recompile with it in the damn thing. Screw this module! But, I found the answer to the woes I have (and this may help all you other 2.6'er as well!) in a config file.
With the 2.4.x kernel, if you want to load a module a boot, there's a file in /etc/ that you can insert a module name into and it should load on boot. That file is /etc/modules . The comments inside the file are
Quote:
# /etc/modules: kernel modules to load at boot time.
#
# This file should contain the names of kernel modules that are
# to be loaded at boot time, one per line. Comments begin with
# a `#', and everything on the line after them are ignored.
|
I tried that. I entered tulip on its own line. Rebooted. Nothing new. Ifconfig gives me no card. I then started looking at the contents of every config file in /etc that looked useful to a module loader. I stumbled upon the solution: /etc/modprobe.preload
I fired up jed (my fave editor for small config stuff):
jed /etc/modprobe.preload
Lo and behold, I found this inside
Quote:
# /etc/modprobe.preload: kernel modules to load at boot time.
#
# This file should contain the names of kernel modules that are
# to be loaded at boot time, one per line. Comments begin with
# a `#', and everything on the line after them are ignored.
# this file is for module-init-tools (kernel 2.5 and above) ONLY
# for old kernel use /etc/modules
|
Below the comments, I typed tulip and saved the file. rebooted, and there was my network. ifconfig came back with a healthy eth0 entry. lsmod proved that the tulip module was indeed loaded. The internet came back to me without extra work.
Despite this, a look at /var/log/dmesg showed that eth0 had failed to load
When booting, the message was plain as the light of day, a big red
failed. Regardless, the interface was up. A long read into /var/log messages showed that indeed, the card was probed by ifplugd and came back as unable to load at one point. Another point, after (logged the next second - I guess after it was logged as failed) it was successful. Here are the relavent lines:
Quote:
Feb 10 00:08:45 wilty network: Setting network parameters: succeeded
Feb 10 00:08:45 wilty network: Bringing up loopback interface: succeeded
Feb 10 00:08:45 wilty ifplugd(eth0)[1331]: ifplugd 0.21b initializing.
Feb 10 00:08:45 wilty ifplugd(eth0)[1331]: Using interface eth0/00:04:5A:80:FE:3A with driver <tulip> (version: 1.1.13)
Feb 10 00:08:45 wilty ifplugd(eth0)[1331]: Using detection mode: SIOCGMIIPHY
Feb 10 00:08:45 wilty ifplugd(eth0)[1331]: Initialization complete, link beat not detected.
Feb 10 00:08:45 wilty network: Bringing up interface eth0: failed
|
but,
Quote:
Feb 10 00:08:52 wilty ifplugd(eth0)[1331]: Program executed successfully.
|
Without the addition of that one word in the /etc/modprobe.preload I didn't get that part of the message. The interface stayed down until I manually inserted the module.
This is lengthy, but I figured that its an important 2.6 kernel issue, as the file is different. Now I surf like mad! Now for kde...