We now have cpu_init() and secondary_cpu_init() doing nothing but calling _cpu_init() with the same arguments. Rename _cpu_init() to cpu_init() and use it as a replcement for secondary_cpu_init().
Signed-off-by: Rusty Russell <[EMAIL PROTECTED]> --- arch/i386/kernel/cpu/common.c | 36 ++++++++++-------------------------- arch/i386/kernel/smpboot.c | 10 +++++----- include/asm-i386/processor.h | 3 ++- 3 files changed, 17 insertions(+), 32 deletions(-) diff -r 18694148c020 arch/i386/kernel/cpu/common.c --- a/arch/i386/kernel/cpu/common.c Wed Mar 21 17:15:19 2007 +1100 +++ b/arch/i386/kernel/cpu/common.c Wed Mar 21 17:18:37 2007 +1100 @@ -644,9 +644,16 @@ struct i386_pda boot_pda = { .pcurrent = &init_task, }; -/* Common CPU init for both boot and secondary CPUs */ -static void __cpuinit _cpu_init(int cpu, struct task_struct *curr) -{ +/* + * cpu_init() initializes state that is per-CPU. Some data is already + * initialized (naturally) in the bootstrap process, such as the GDT + * and IDT. We reload them nevertheless, this function acts as a + * 'CPU state barrier', nothing should get across. + */ +void __cpuinit cpu_init(void) +{ + int cpu = smp_processor_id(); + struct task_struct *curr = current; struct tss_struct * t = &per_cpu(init_tss, cpu); struct thread_struct *thread = &curr->thread; @@ -706,29 +713,6 @@ static void __cpuinit _cpu_init(int cpu, mxcsr_feature_mask_init(); } -/* Entrypoint to initialize secondary CPU */ -void __cpuinit secondary_cpu_init(void) -{ - int cpu = smp_processor_id(); - struct task_struct *curr = current; - - _cpu_init(cpu, curr); -} - -/* - * cpu_init() initializes state that is per-CPU. Some data is already - * initialized (naturally) in the bootstrap process, such as the GDT - * and IDT. We reload them nevertheless, this function acts as a - * 'CPU state barrier', nothing should get across. - */ -void __cpuinit cpu_init(void) -{ - int cpu = smp_processor_id(); - struct task_struct *curr = current; - - _cpu_init(cpu, curr); -} - #ifdef CONFIG_HOTPLUG_CPU void __cpuinit cpu_uninit(void) { diff -r 18694148c020 arch/i386/kernel/smpboot.c --- a/arch/i386/kernel/smpboot.c Wed Mar 21 17:15:19 2007 +1100 +++ b/arch/i386/kernel/smpboot.c Wed Mar 21 17:18:37 2007 +1100 @@ -378,14 +378,14 @@ static void __cpuinit start_secondary(vo static void __cpuinit start_secondary(void *unused) { /* - * Don't put *anything* before secondary_cpu_init(), SMP - * booting is too fragile that we want to limit the - * things done here to the most necessary things. + * Don't put *anything* before cpu_init(), SMP booting is too + * fragile that we want to limit the things done here to the + * most necessary things. */ #ifdef CONFIG_VMI vmi_bringup(); #endif - secondary_cpu_init(); + cpu_init(); preempt_disable(); smp_callin(); while (!cpu_isset(smp_processor_id(), smp_commenced_mask)) diff -r 18694148c020 include/asm-i386/processor.h --- a/include/asm-i386/processor.h Wed Mar 21 17:15:19 2007 +1100 +++ b/include/asm-i386/processor.h Wed Mar 21 17:18:37 2007 +1100 @@ -744,6 +744,6 @@ extern int sysenter_setup(void); extern int sysenter_setup(void); extern void cpu_set_gdt(int); -extern void secondary_cpu_init(void); +extern void cpu_init(void); #endif /* __ASM_I386_PROCESSOR_H */ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/