mirror of https://gitee.com/openkylin/linux.git
blackfin: Use generic idle thread allocation
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> Cc: Mike Frysinger <vapier@gentoo.org> Link: http://lkml.kernel.org/r/20120420124557.717064871@linutronix.de
This commit is contained in:
parent
a4cfc31da3
commit
6bba2682c6
|
@ -37,6 +37,7 @@ config BLACKFIN
|
|||
select GENERIC_IRQ_PROBE
|
||||
select IRQ_PER_CPU if SMP
|
||||
select HAVE_NMI_WATCHDOG if NMI_WATCHDOG
|
||||
select GENERIC_SMP_IDLE_THREAD
|
||||
|
||||
config GENERIC_CSUM
|
||||
def_bool y
|
||||
|
|
|
@ -340,27 +340,10 @@ void smp_send_stop(void)
|
|||
return;
|
||||
}
|
||||
|
||||
int __cpuinit __cpu_up(unsigned int cpu, struct task_struct *tidle)
|
||||
int __cpuinit __cpu_up(unsigned int cpu, struct task_struct *idle)
|
||||
{
|
||||
int ret;
|
||||
struct blackfin_cpudata *ci = &per_cpu(cpu_data, cpu);
|
||||
struct task_struct *idle = ci->idle;
|
||||
|
||||
if (idle) {
|
||||
free_task(idle);
|
||||
idle = NULL;
|
||||
}
|
||||
|
||||
if (!idle) {
|
||||
idle = fork_idle(cpu);
|
||||
if (IS_ERR(idle)) {
|
||||
printk(KERN_ERR "CPU%u: fork() failed\n", cpu);
|
||||
return PTR_ERR(idle);
|
||||
}
|
||||
ci->idle = idle;
|
||||
} else {
|
||||
init_idle(idle, cpu);
|
||||
}
|
||||
secondary_stack = task_stack_page(idle) + THREAD_SIZE;
|
||||
|
||||
ret = platform_boot_secondary(cpu, idle);
|
||||
|
|
Loading…
Reference in New Issue