[Top] [All Lists]

init_idle reaped before final call

Subject: init_idle reaped before final call
From: "Kip Walker" <>
Date: Tue, 05 Mar 2002 11:58:23 -0800
Organization: Broadcom Corp. BPBU
[cross-posted to linux-kernel in a separate mail (oops)]

I'm working with a (approximately) 2.4.17 kernel from the mips-linux
tree (

I'd like to propose removing the "__init" designation from init_idle in
kernel/sched.c, since this is called from rest_init via cpu_idle. 
Notice that rest_init isn't in an init section, and explicitly mentions
that it's avoiding a race with free_initmem.  In my kernel (an SMP
kernel running on a system with only 1 available CPU), cpu_idle isn't
getting called until after free_initmem().

My CPU is MIPS, but it looks like x86 could experience the same problem.


Index: kernel/sched.c
RCS file:
retrieving revision 1.10
diff -u -r1.10 sched.c
--- kernel/sched.c      2002/01/15 04:13:43     1.10
+++ kernel/sched.c      2002/03/05 19:40:14
@@ -1304,7 +1304,7 @@
 extern unsigned long wait_init_idle;
-void __init init_idle(void)
+void init_idle(void)
        struct schedule_data * sched_data;
        sched_data = &aligned_data[smp_processor_id()].schedule_data;

<Prev in Thread] Current Thread [Next in Thread>