[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LFD.1.00.0801262239550.3222@www.l.google.com>
Date: Sat, 26 Jan 2008 22:42:28 -0800 (PST)
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Rusty Russell <rusty@...tcorp.com.au>
cc: Greg KH <gregkh@...e.de>,
Andrew Morton <akpm@...ux-foundation.org>,
linux-kernel@...r.kernel.org
Subject: Re: [GIT PATCH] driver core patches against 2.6.24
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 majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists