浏览代码

Call init_workqueues before pre smp initcalls.

This allows to create workqueues from within the context of
a pre smp initcall (aka early_initcall).

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Heiko Carstens 16 年之前
父节点
当前提交
a802dd0eb5
共有 1 个文件被更改,包括 2 次插入2 次删除
  1. 2 2
      init/main.c

+ 2 - 2
init/main.c

@@ -767,8 +767,6 @@ static void __init do_initcalls(void)
 static void __init do_basic_setup(void)
 static void __init do_basic_setup(void)
 {
 {
 	rcu_init_sched(); /* needed by module_init stage. */
 	rcu_init_sched(); /* needed by module_init stage. */
-	/* drivers will send hotplug events */
-	init_workqueues();
 	usermodehelper_init();
 	usermodehelper_init();
 	driver_init();
 	driver_init();
 	init_irq_proc();
 	init_irq_proc();
@@ -852,6 +850,8 @@ static int __init kernel_init(void * unused)
 
 
 	cad_pid = task_pid(current);
 	cad_pid = task_pid(current);
 
 
+	init_workqueues();
+
 	smp_prepare_cpus(setup_max_cpus);
 	smp_prepare_cpus(setup_max_cpus);
 
 
 	do_pre_smp_initcalls();
 	do_pre_smp_initcalls();