Re: [PATCH RFC] [1/9] Core module symbol namespaces code and intro.

Dave Jones
2007-11-22T03:52:58Z

On Thu, Nov 22, 2007 at 03:43:06AM +0100, Andi Kleen wrote:

> There seems to be rough consensus that the kernel currently has too many
> exported symbols. A lot of these exports are generally usable utility
> functions or important driver interfaces; but another large part are functions
> intended by only one or two very specific modules for a very specific purpose.
> One example is the TCP code. It has most of its internals exported, but
> only for use by tcp_ipv6.c (and now a few more by the TCP/IP congestion modules)
> But it doesn't make sense to include these exported for a specific module
> functions into a broader "kernel interface". External modules assume
> they can use these functions, but they were never intended for that.
>
> This patch allows to export symbols only for specific modules by
> introducing symbol name spaces. A module name space has a white
> list of modules that are allowed to import symbols for it; all others
> can't use the symbols.

I really like this patchset. Definitely a step in the right direction imo.
Looks like some nits there that checkpatch will probably pick up on,
but otherwise, looks very straightforward too.

Kudos.

Dave

--