Skip to content

Commit

Permalink
x86: merge native_smp_cpus_done
Browse files Browse the repository at this point in the history
They look similar enough, and are merged. Only difference
(zap_low_mapping for i386) is inside ifdef

Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Glauber de Oliveira Costa authored and Ingo Molnar committed Apr 17, 2008
1 parent a8db845 commit 83f7eb9
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 40 deletions.
21 changes: 20 additions & 1 deletion arch/x86/kernel/smpboot.c
Original file line number Diff line number Diff line change
Expand Up @@ -880,7 +880,6 @@ static int __cpuinit do_boot_cpu(int apicid, int cpu)
apic_write(APIC_ESR, 0);
apic_read(APIC_ESR);


/*
* Starting actual IPI sequence...
*/
Expand Down Expand Up @@ -1017,6 +1016,26 @@ void __init native_smp_prepare_boot_cpu(void)
per_cpu(cpu_state, me) = CPU_ONLINE;
}

void __init native_smp_cpus_done(unsigned int max_cpus)
{
/*
* Cleanup possible dangling ends...
*/
smpboot_restore_warm_reset_vector();

Dprintk("Boot done.\n");

impress_friends();
smp_checks();
#ifdef CONFIG_X86_IO_APIC
setup_ioapic_dest();
#endif
check_nmi_watchdog();
#ifdef CONFIG_X86_32
zap_low_mappings();
#endif
}

#ifdef CONFIG_HOTPLUG_CPU
void remove_siblinginfo(int cpu)
{
Expand Down
21 changes: 0 additions & 21 deletions arch/x86/kernel/smpboot_32.c
Original file line number Diff line number Diff line change
Expand Up @@ -215,24 +215,3 @@ void __init native_smp_prepare_cpus(unsigned int max_cpus)
mb();
smp_boot_cpus(max_cpus);
}

extern void impress_friends(void);
extern void smp_checks(void);

void __init native_smp_cpus_done(unsigned int max_cpus)
{
/*
* Cleanup possible dangling ends...
*/
smpboot_restore_warm_reset_vector();

Dprintk("Boot done.\n");

impress_friends();
smp_checks();
#ifdef CONFIG_X86_IO_APIC
setup_ioapic_dest();
#endif
check_nmi_watchdog();
zap_low_mappings();
}
18 changes: 0 additions & 18 deletions arch/x86/kernel/smpboot_64.c
Original file line number Diff line number Diff line change
Expand Up @@ -212,21 +212,3 @@ void __init native_smp_prepare_cpus(unsigned int max_cpus)
printk(KERN_INFO "CPU%d: ", 0);
print_cpu_info(&cpu_data(0));
}

extern void impress_friends(void);
extern void smp_checks(void);

/*
* Finish the SMP boot.
*/
void __init native_smp_cpus_done(unsigned int max_cpus)
{
smpboot_restore_warm_reset_vector();

Dprintk("Boot done.\n");

impress_friends();
smp_checks();
setup_ioapic_dest();
check_nmi_watchdog();
}

0 comments on commit 83f7eb9

Please sign in to comment.