David Freeman wrote:
--- Raphael Mankin raph@panache.demon.co.uk wrote:
In general, your primary net card should be compiled in and not a module. You can get away with it if you add to your conf.modules (or modules.conf) a line like alias eth0 3c509 (or whatever the module is called) The alternative is to ensure that an explciit modprobe is done for the card before you try to configure the network. Dig around in /etc/rc* to find out where to put it.
Why should it be compiled in? surely this is a bad idea as every time you change card you need to recompile the whole kernel.
that depends on your viewpoint... I have a machine that hasn't changed it's HW spec in 5 years... some people say that having modules lowers the memory footprint on startup, this may be true but these days with modern hardware I don't see startup memory footprint being a big issue... if you are constantly messing around with the hardware then, yes, having modules is good, but it dosen't mean that having modules compiled into the kernel is bad ;)..
On Peanut linux I have a file called rc.modules which is run by init at boot time and sets up each of the devices (network, sound etc...) This seams to work very well, not sure if its optomised for speed, but for someone like me whoes on my 5 network card in 5 months, and who had run out of PCI slots, I find this works well. I still don't understand why we don't just have the core functioanlity and enough to boot the machine compiled in and everything else put in as a module, this way it makes things very configurable, and you don't need to compile the kernel as often as you would other wise. Can anyone tell me why we wouldn't do this?
There are some modules which (for reasons unknown to me) can't be loaded as modules wether this is a kernel limitation, or lazy programming (!) I don't know.
There are some kenel's which do what you are saying (mach springs to mind), but I don't know enough about them to speak on the subject ;)...
Sz