summaryrefslogtreecommitdiff
path: root/init
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-10-23 21:00:14 +0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-10-23 21:00:14 +0400
commita5344876065e047d507800d0801a637d68d3b129 (patch)
tree240173ed2f588a1c61aff9bb513255f99b0cd6a2 /init
parent296e1ce0dc36bb106c139e25482d02da43c70e71 (diff)
parent8163bcac779f62c6bf847caed9bce905db0693fb (diff)
downloadlinux-a5344876065e047d507800d0801a637d68d3b129.tar.xz
Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus
* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: stop_machine: fix error code handling on multiple cpus stop_machine: use workqueues instead of kernel threads workqueue: introduce create_rt_workqueue Call init_workqueues before pre smp initcalls. Make panic= and panic_on_oops into core_params Make initcall_debug a core_param core_param() for genuinely core kernel parameters param: Fix duplicate module prefixes module: check kernel param length at compile time, not runtime Remove stop_machine during module load v2 module: simplify load_module.
Diffstat (limited to 'init')
-rw-r--r--init/main.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/init/main.c b/init/main.c
index 672ae75b2059..b038fa142041 100644
--- a/init/main.c
+++ b/init/main.c
@@ -699,13 +699,7 @@ asmlinkage void __init start_kernel(void)
}
static int initcall_debug;
-
-static int __init initcall_debug_setup(char *str)
-{
- initcall_debug = 1;
- return 1;
-}
-__setup("initcall_debug", initcall_debug_setup);
+core_param(initcall_debug, initcall_debug, bool, 0644);
int do_one_initcall(initcall_t fn)
{
@@ -775,8 +769,6 @@ static void __init do_initcalls(void)
static void __init do_basic_setup(void)
{
rcu_init_sched(); /* needed by module_init stage. */
- /* drivers will send hotplug events */
- init_workqueues();
usermodehelper_init();
driver_init();
init_irq_proc();
@@ -860,6 +852,8 @@ static int __init kernel_init(void * unused)
cad_pid = task_pid(current);
+ init_workqueues();
+
smp_prepare_cpus(setup_max_cpus);
do_pre_smp_initcalls();