Re: Suggestion for handling of boot-time driver options

Dominik Kubla (dominik.kubla@uni-mainz.de)
Sun, 14 Dec 1997 17:42:08 +0100


> From: Roderich Schupp <rsch@ExperTeam.de>
> Date: Sat, 13 Dec 1997 20:17:57 +0100
> Subject: Suggestion for handling of boot-time driver options
[...]
> Any suggestions, objections, flames?
> Cheers, Roderich

> From: "Grant R. Guenther" <grant@torque.net>
> Date: Sat, 13 Dec 1997 16:29:09 -0500 (EST)
> Subject: Re: Suggestion for handling of boot-time driver options
[...]
> This scheme could be further advanced if it was combined with
> Richard Henderson's "MODULE_PARM" facilty, so that the module's
> "setup" function could be automatically constructed from the
> information in the MODULE_PARM declarations. I figure that's
> just some more ELF trickery ...

That fits nicely with an idea i had some time ago and that i discussed
with Eric Youngdale and Mike Neuffer at this years Linux-Kongress:

What if we could compile drivers as monolithic and modular at the same
time? I thought that it should be possible to put the startup code into
different ELF segments - eg .start0 and .start1 - and then have the linker
strip of the unwanted part.

What would this mean?

1. We could avoid the well-known problem of "this driver doesn't compile as
module" ?
2. Distributors could provide their customers with a kernel link kit as
found on commercial Unices, allowing them to link a custom kernel
as they need it without the need of a full recompile. (Some people
simply won't use kerneld for their own reasons, like it or not.)
This is especially useful for shrink-wrapped applications, when a
full gcc installation might not be available.
3. This allows the use of binary-only drivers with monolithic kernels.
(are there such beasts?)

What killed the whole idea were the startup code in init/main.c and my
poor understanding of the whole ELF magic.

Is this an idea that warrants further investigation or am i really the
lunatic many people believe me to be? <g>

Dominik Kubla