diff options
author | Mark Huang <mlhuang@CS.Princeton.EDU> | 2006-09-29 04:59:34 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-09-29 12:18:08 -0400 |
commit | d10be6d1bdb0c901b78244872de3cc1c1b6c3fb2 (patch) | |
tree | 560171a8091e7f18763ff40099ccbcf9567b7842 /kernel/params.c | |
parent | 8454aeef6fea944ced757ff8e761b59eb3ee960f (diff) |
[PATCH] module_subsys: initialize earlier
Initialize module_subsys earlier (or at least earlier than devices) since
it could be used very early in the boot process if kmod loads a module
before the device initcalls. Otherwise, kmod will crash in
kernel/module.c:mod_sysfs_setup() since the kset in module_subsys is not
initialized yet.
I only noticed this problem because occasionally, kmod loads the modules
for my SCSI and Ethernet adapters very early, during the boot process
itself. I don't quite understand why it loads them sometimes and doesn't
load them other times. Or who is telling kmod to do so. Can someone
explain?
Signed-off-by: Mark Huang <mlhuang@cs.princeton.edu>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel/params.c')
-rw-r--r-- | kernel/params.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/params.c b/kernel/params.c index 63d432d0ebc0..f406655d6653 100644 --- a/kernel/params.c +++ b/kernel/params.c | |||
@@ -699,7 +699,7 @@ static int __init param_sysfs_init(void) | |||
699 | 699 | ||
700 | return 0; | 700 | return 0; |
701 | } | 701 | } |
702 | __initcall(param_sysfs_init); | 702 | subsys_initcall(param_sysfs_init); |
703 | 703 | ||
704 | EXPORT_SYMBOL(param_set_byte); | 704 | EXPORT_SYMBOL(param_set_byte); |
705 | EXPORT_SYMBOL(param_get_byte); | 705 | EXPORT_SYMBOL(param_get_byte); |