On Sat, 26 Jan 2008, Rusty Russell wrote:
> 
> module.c:1832 (in load_module)
> 
>       if (find_module(mod->name)) {
>               err = -EEXIST;
>               goto free_mod;
>       }
> 
> That's pretty early, and before this backtrace.
> 
> Even for simultaneous loads, there's a mutex which protects from here to the 
> list insertion.

My problem isn't trying to load the same module twice.

My problem is that the *driver* already exists (because it's compiled in), 
and has already initialized itself, and has already registered.

Then, initrd tries to load an old module for that driver.

So no simultaneous loading, no two modules, simple two *drivers* with the 
same module names - but one was compiled in, and the other will fail 
because it doesn't have the required linkages (ie it will failt the 
modversions checks).

But even before it fails the modversion checks, it apparently does various 
ugly things that clash with the built-in driver.

At least that seems to be the case.

                Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to