Subject: Re: LKMs
To: NetBSD Kernel list <tech-kern@netbsd.org>
From: Robert Elz <kre@munnari.OZ.AU>
List: tech-kern
Date: 11/26/2000 14:05:05
    Date:        Sat, 25 Nov 2000 15:20:23 -0500
    From:        Bill Sommerfeld <sommerfeld@orchard.arlington.ma.us>
    Message-ID:  <200011252020.eAPKKNQ01076@syn.hamachi.org>

  | There will be open revolt if anyone seriously proposes removing the
  | ability to build monolithic kernels from netbsd..

Yes.

I understand the desire for LKMs from vendors of binary systems,
there they're real useful (and that includes pseudo binary-only
systems like linux, where the source is available, but 90% of the
users wouldn't know what to do with it...)

I can also understand the desire from kernel developers who want to
be able to make quick new tests of kernel features without needing
to reboot all the time - I suppose I might even be convinced at some
time to use that myself (to this point in my life I have never actively
used an LKM, though I guess I have booted systems that use them without
me particularly noticing).   In general I don't think a lot of the
"do a quick change, test it, didn't work, how about this, ..." style
of programming - that may be because I learned to program back in the
days when one prepared the program on punched cards, submitted it to
the operators, who would run it (often overnight) and return the
cards and lineprinter output later (usually the next morning).   That
led to carefully planned tests, and long analysis of the results,
to try and locate as many bugs as possible in just one run of the
program (and then find more by just carefully reading the code and
analysing it).   So, for me, a reboot to test a new feature isn't
a problem, it is only likely to happen twice a day - once to do the
first test, then again to fix the really stupid error and allow
the real test to take place...   (there were some things about the
box of cards days that were really irritating, and doing something
dumb like making a typo on one of the job control cards, which led to
nothing being run at all, was truly annoying).

So, I guess that if it was to be a choice between retaining a
monolithic kernel, and switching to an "everything is an LKM",
then I'd be supporting the monolithic kernel every time.

As long as I can continue to comment out the "options LKM" line
in my kernel config file, I'll be happy...

kre

ps: I know this message contains a bit of noise, but could we avoid
turning it into one of those "in my day, we had to walk 5 miles to
school, without shoes..." run-on chain sequences...