X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=blobdiff_plain;f=arch%2Fx86%2Fkernel%2Fsmpboot.c;h=a5591d43fc315c3f329cefe13fe9385d48bc8701;hp=bb28f2cae3643f52b5a068bc5d0a878052a6852e;hb=0ed38b9005b4d959baa7a454e8e81784488b3a49;hpb=0a8896d4a278033a7e860cfd43da0ade04b2ef48 diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c index bb28f2cae364..a5591d43fc31 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c @@ -689,7 +689,8 @@ static int __cpuinit do_boot_cpu(int apicid, int cpu) INIT_WORK_ONSTACK(&c_idle.work, do_fork_idle); - alternatives_smp_switch(1); + /* Just in case we booted with a single CPU. */ + alternatives_enable_smp(); c_idle.idle = get_idle_for_cpu(cpu); @@ -1109,20 +1110,6 @@ out: preempt_enable(); } -void arch_disable_nonboot_cpus_begin(void) -{ - /* - * Avoid the smp alternatives switch during the disable_nonboot_cpus(). - * In the suspend path, we will be back in the SMP mode shortly anyways. - */ - skip_smp_alternatives = true; -} - -void arch_disable_nonboot_cpus_end(void) -{ - skip_smp_alternatives = false; -} - void arch_enable_nonboot_cpus_begin(void) { set_mtrr_aps_delayed_init(); @@ -1321,9 +1308,6 @@ void native_cpu_die(unsigned int cpu) if (per_cpu(cpu_state, cpu) == CPU_DEAD) { if (system_state == SYSTEM_RUNNING) pr_info("CPU %u is now offline\n", cpu); - - if (1 == num_online_cpus()) - alternatives_smp_switch(0); return; } msleep(100);