: I think the crux of the matter is that one really does care that only
: proper modules get loaded into the kernel -- the result of loading a
: .o that *wasn't* a module would be ugly indeed.
You cannot insmod an arbitrary .o file. It has to have an init_module
symbol, a cleanup_module symbol, and one of two forms of kernel
version matching information, depending on CONFIG_MODVERSIONS.
: Better would be if
: modules were fully version-locked in some way, so that there was a
: high probability that if a module was incompatible with a particular
: kernel, it would not load at all. And, ideally, if the kernel were
: changed but still compatible with a particular module, the module
: could be loaded unchanged. (Unfortunately, I don't understand the
: module system well enough to know to what degree MODVERSIONS takes
: care of this.)
Well, that's exactly what MODVERSIONS is supposed to take care of.
-- Dave Hinds