Clarification of loadable drivers

Sean Middleditch elanthis at
Wed Jun 30 10:01:12 PDT 2004

On Wed, 2004-06-30 at 12:06, Jono Bacon wrote:
> Hi all,

>   - Am I right in thinking that someone could take a stock 2.6.x kernel 
> and compile a module, then take that module and put it on another system 
> with a 2.6.x kernel and it would work?

>   - Would a module for 2.6.x work with any other minor revision of 2.6.x?
>   - Do different compiled kernels for different distros (such as the 
> RedHat kernel, Debian kernel etc) allow you to take modules and use them 
> on any kernel of the same version?

Only if it's the exact same kernel with the exact same patches with the
exact same options compiled using the exact same compiler.  The kernel
folks don't give a damn about usability, they seem to think users are
perfectly alright with having to upgrade, repatch, rebuild, and install
a new kernel every time they need a new driver for a device that didn't
come with the kernel they're currently running.  ABI/API are not
maintained even within the same point release, much less the same kernel
series.  Even when compiling from source there is still no guarantee
that you can take a completely Open Source driver and compile it for a
given kernel.

> It strikes me that if we are going to face issues allowing modules from 
> different version of 2.6.x to work with each other, this is going to be 
> a major stumbling block. I would have thought that 2.6 would preserve 
> ABI compatibility across the different minor releases, but I may be 
> wrong, hence the question. :P

They don't even maintain API compatibility.  The kernel developers in
general don't give a damn about real users.
> If we can intermingle different 2.6.x modules across minor releases, we 
> then face the challenge of modules compiled for different distro cases.

It is completely infeasible to distribute binary modules.  You will have
to distribute source, require users to have all necessary development
tools and support headers and such, and carry several copies of each
driver source depending on which kernel API version they are compatible
Sean Middleditch <elanthis at>
AwesomePlay Productions, Inc.

hal mailing list
hal at

More information about the Hal mailing list