Messages in this thread | | | Date | Sun, 7 Mar 2010 10:12:48 -0800 (PST) | From | Linus Torvalds <> | Subject | Re: modules, "modules" and CONFIG_LIST_SORT |
| |
On Sun, 7 Mar 2010, Randy Dunlap wrote: > On 03/07/10 03:23, Linus Torvalds wrote: > > > > Honestly, personally I'd rather have a real library that modules can link > > to _before_ even loading into kernel space, but that's not how we've > > traditionally done things. So I guess we should just revert that commit. > > xfs also needs "select LIST_SORT". I posted a patch for that a few days > ago and now Christoph Hellwig has asked me to send the patch directly to Linus, > but if Linus is going to revert the 'config LIST_SORT' patch, I'll skip it.
Ok, it's reverted in my tree now, I'll push out soon.
That said, I was serious about the "real library" thing. I do wonder if we should add a "link with standard kernel libraries" phase to the final module link, so that we can stop exporting silly things, and handle cases like this sanely without forcing it on everybody just because some module _might_ need it.
For example, I've always hated how we export the 'libgcc' kind of symbols too. I think we'd generally be _much_ better off just linking them into the module directly, even if that means that we'll have multiple copies. I hate the things like
EXPORT_SYMBOL(__ashldi3);
that various architectures use. They have _nothing_ to do with real kernel interfaces, and are usually really small. And on several architectures a direct-linked call can be optimized by the linker in ways that external linkage cannot, so it might even improve code in some cases.
Linus
| |