lkml.org 
[lkml]   [2015]   [Aug]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH] kernel: make module.c itself more explicitly non-modular
Date
The Kconfig currently controlling compilation of this code is:

menuconfig MODULES
bool "Enable loadable module support"

...meaning that it currently is not being built as a module by anyone.
No surprise here, since modular support being a module would be an
interesting chicken before the egg problem.

Lets remove the use of module_init in this code so that when reading
the file, there is less doubt that it is builtin-only.

Since module_init translates to device_initcall in the non-modular
case, the init ordering remains unchanged with this commit. However
one could argue that fs_initcall makes more sense for proc stuff,
and we can change the initcall order later and watch for fallout
if so desired.

We can't of course delete the module.h include in this case since it
is used all through the rest of the file.

Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---

[I was undecided as to whether we should do this in one step
or two, i.e. instead just make the change to fs_initcall here
and now, and so went with the more cautious/granular approach.]

kernel/module.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/module.c b/kernel/module.c
index 8f051a106676..7750bdcb12fc 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -3947,7 +3947,7 @@ static int __init proc_modules_init(void)
proc_create("modules", 0, NULL, &proc_modules_operations);
return 0;
}
-module_init(proc_modules_init);
+device_initcall(proc_modules_init);
#endif

/* Given an address, look for it in the module exception tables. */
--
2.5.0


\
 
 \ /
  Last update: 2015-08-26 04:41    [W:0.051 / U:1.860 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site