Re: [PATCH 3/4] module: unexport each_symbol()

Alan Jenkins
2009-09-26T12:13:34Z

Christoph Hellwig wrote:
> On Wed, Sep 23, 2009 at 01:29:43PM -0400, Tim Abbott wrote:
>
>> While Ksplice is not in-tree yet, Ksplice is a user of each_symbol (and in
>> fact was the reason why each_symbol was originally exported). Is it easy
>> to modify your patch series so that you don't have to remove each_symbol?
>>
>
> We don't keep symbols for out of tree junk around.
>

We do alter them mercilessly though :-).

I don't want to preserve the current implementation of each_symbol()
because it duplicates too much of the modified find_symbol(). However,
the duplicated code can be simplified if I changed the various "syms"
fields in struct module with a single array (without increasing the size
of struct module). I consider this a cleanup; it would benefit a couple
of other sites in module.c as well.

The change would make "struct symsearch" redundant - changing the
interface of each_symbol(). If Ksplice fails to merge quickly enough it
will still be easy to remove each_symbol(), and we'll still benefit from
the cleanup in find_symbol() and elsewhere.

Rusty, does that make sense to you?

Thanks
Alan