mii module broken under new scheme
Quoted 8 lines · Jeff Garzik
Quoted 5 lines · Matt Reppert
drivers/net/mii.cdoesn't export module init/cleanup functions. That means it
can't be loaded under the new module scheme. This patch adds do-nothing functions for it, which allows it to load. (8139too depends on mii, so without this I don't have network.)
Quoted 4 lines
ahhh! I was wondering what was up, but since I was busy with other
things I just compiled it into the kernel and continued on my way.That's a bug in the new module loader.
Rusty told me that it is intentional. Add
no_module_init;
at the end of module. He even sent patch which fixes dozen of such modules (15 I had on my system...) to Linus, but it get somehow lost.
Only question is whether we want to have it this way or no. And if yes, whether we do not want to move no_module_init from linux/init.h to linux/module.h: all of affected modules were already including module.h to get MODULE_LICENSE() & other, but almost none of them included init.h.
Petr Vandrovec [email protected]
Quoted 6 lines · Petr Vandrovec
Rusty told me that it is intentional. Add
no_module_init;at the end of module. He even sent patch which fixes dozen of such modules (15 I had on my system...) to Linus, but it get somehow lost.
I know.
I'm hoping Linus intentionally dropped it, because it's silly. See the other message I just posted. It's redundant because the module loader can obviously figure out there is no init nor exit routine. It's just like EXPORT_NO_SYMBOLS: redundant and obvious.
<rant>
Why the fsck is Rusty's new module code requiring all these driver changes??? Note from your message above that there are "dozens" of modules which worked just fine, but now they need to be changed under Rusty's new system.
I thought Rusty's new stuff was going to cause minimal to no driver breakage. You know, at kernel summit there was the thought that we should just disable module -un-loading. I wish he had stuck with that simple idea, plus module_param [because MODULE_PARM obviously sucks]. </rant>
Jeff, grumbling driver author who sees his drivers diverging and
breaking...
Quoted 6 lines · [email protected] said:
Rusty told me that it is intentional. Add
no_module_init;
at the end of module. He even sent patch which fixes dozen of such modules (15 I had on my system...) to Linus, but it get somehow lost.Only question is whether we want to have it this way or no.
Some questions you might want to consider before that one:
1. How do we handle "insmod -odummy0 dummy.o ; insmod -odummy1 dummy.o"
2. When does the module name differ from the filename (modulo .o) ?
3. Given your answers to #1 and #2, is the module name redundant anyway?
--
dwmw2