Well after my rant last night I would like to actually work out how modules are supposed to work as I don't seem to understand them very well at the moment!
So, to some rather basic questions:-
How do modules get installed (as in attached to the kernel when the system starts up)? In my previous encounters with modules I think it was a totally manual process in that one had to add the required modprobe command to the rc files. Is this still true or is there some sort of automatic process that does this nowadays?
What does setting a device to [M] in the kernel configuration actually do? It can't be necessary for a module to work as otherwise one wouldn't be able to add new modules would you? (E.g. I seem to have added my RTL8168 module by just compiling it and installing it, it doesn't appear in the kernel configuration - or does it?)
By the way my problems with the RTL8168 module seem to be down to the fact that the rc.modules script was linked to a 2.4.33 version rather than the 2.6.18 version which it should have been linked to. Fixing this seems to have made things work rather better.