On Thu, 7 Apr 2005, Randy.Dunlap wrote:

On Thu, 7 Apr 2005 10:23:32 +0200 Magnus Damm wrote:

| On Apr 7, 2005 4:23 AM, Roland Dreier <[EMAIL PROTECTED]> wrote:
| >  > > -#define module_init(x) __initcall(x);
| >  > > +#define module_init(x) __initcall(x); __module_init_disable(x);
| >  >
| >  > It would be better if there is brackets around them... like
| >  >
| >  > #define module_init(x) { __initcall(x); __module_init_disable(x); }
| >  >
| >  > then we know it wont break some code like
| >  >
| >  > if (..)
| >  >  module_init(x);
| >
| > This is all completely academic, since module_init() is a declaration
| > that won't be inside any code, but in general it's better still to use
| > the do { } while (0) idiom like
| >
| > #define module_init(x) do { __initcall(x); __module_init_disable(x); } 
while (0)
| >
| > so it won't break code like
| >
| >         if (..)
| >                 module_init(x);
| >         else
| >                 something_else();
| >
| > (Yes, that code is nonsense but if you're going to nitpick, go all the 
way...)
|
| Right. =)
| Anyway, besides nitpicking, is there any reason not to include this
| code? Or is the added feature considered plain bloat? Yes, the kernel
| will become a bit larger, but all the data added by this patch will go
| into the init section.

Looks like a good idea to me.

---
~Randy

Can't you disable module-loading with a module? I think so. You don't need to modify the kernel. Boot-scripts could just load the "final" module and there is nothing that can be done to add another module (or even unload existing ones).

Cheers,
Dick Johnson
Penguin : Linux version 2.6.11 on an i686 machine (5537.79 BogoMips).
 Notice : All mail here is now cached for review by Dictator Bush.
                 98.36% of all statistics are fiction.
-
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