Re: Why not make Linux source modular?

Theodore Ts'o (tytso@mit.edu)
Fri, 23 Feb 1996 15:47:43 -0500


From: cs95rro@brunel.ac.uk
Date: Wed, 21 Feb 1996 21:46:02 +0000 (GMT)

My point is this: Why is Linux kernel source distributed as one big lump?

Many of the drivers could be distributed seperatly as modules, such
as file system drivers, some Networking protocols, Net cards
etc... and have different people maintaining them. Ftape already does
this, and it works. (Although he is mumbling about integrating it
with the kernel...)

Well, having tried doing this with the Comtrol rocketport driver, I can
tell you that maintaining kernel modules is not as easy as one might
suspect. By keeping it as a separate module, you have to deal with a
large number of new variables:

1.3 vs 1.2
a.out vs ELF
modversions vs. non-modversions
what version of insmod is used

(Note: these are all _independent_ variables! Even ELF 1.2 systems are
common these days...)

I've had to spend a *lot* of time dealing with these sorts of issues,
and it's become a support nightmare for the Comtrol people, because
people are used to a driver that works pretty much turn-key, and keeping
the driver working across all of these different variations has been a
really big challenge. A lot of these problems would have gone away if I
had integrated the Comtrol driver into the main kernel release; there
have been many times when I've regretted not doing so at the start.

- Ted