summaryrefslogtreecommitdiff
path: root/init
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@home.transmeta.com>2002-07-27 06:30:08 -0700
committerLinus Torvalds <torvalds@home.transmeta.com>2002-07-27 06:30:08 -0700
commitd45db7c22033a7042cabab3cd2f2d72ac53e69b2 (patch)
tree0ad8dd14702943aa50bd287142918eb12cfb617c /init
parentddef8ca8d041eb43a20ead6ae500a5e84aa847f3 (diff)
parent13243cc58d33a0db19ca8e846fdb66e5ad527e1f (diff)
Merge bk://bkbits.ras.ucalgary.ca/rgooch-2.5
into home.transmeta.com:/home/torvalds/v2.5/linux
Diffstat (limited to 'init')
-rw-r--r--init/main.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/init/main.c b/init/main.c
index a1c080027c3b..32cad19bf432 100644
--- a/init/main.c
+++ b/init/main.c
@@ -524,6 +524,19 @@ static void __init do_basic_setup(void)
do_initcalls();
}
+static void do_pre_smp_initcalls(void)
+{
+#if CONFIG_SMP
+ extern int migration_init(void);
+#endif
+ extern int spawn_ksoftirqd(void);
+
+#if CONFIG_SMP
+ migration_init();
+#endif
+ spawn_ksoftirqd();
+}
+
extern void prepare_namespace(void);
static int init(void * unused)
@@ -533,6 +546,9 @@ static int init(void * unused)
lock_kernel();
/* Sets up cpus_possible() */
smp_prepare_cpus(max_cpus);
+
+ do_pre_smp_initcalls();
+
smp_init();
do_basic_setup();