cris: 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> Acked-by: Jesper Nilsson <jesper.nilsson@axis.com> Link: http://lkml.kernel.org/r/20120420124557.789657793@linutronix.de
This commit is contained in:
Родитель
e80e7813cd
Коммит
a4cfc31da3
|
@ -49,6 +49,7 @@ config CRIS
|
|||
select HAVE_GENERIC_HARDIRQS
|
||||
select GENERIC_IRQ_SHOW
|
||||
select GENERIC_IOMAP
|
||||
select GENERIC_SMP_IDLE_THREAD if ETRAX_ARCH_V32
|
||||
|
||||
config HZ
|
||||
int
|
||||
|
|
|
@ -108,17 +108,12 @@ void __init smp_cpus_done(unsigned int max_cpus)
|
|||
|
||||
/* Bring one cpu online.*/
|
||||
static int __init
|
||||
smp_boot_one_cpu(int cpuid)
|
||||
smp_boot_one_cpu(int cpuid, struct task_struct idle)
|
||||
{
|
||||
unsigned timeout;
|
||||
struct task_struct *idle;
|
||||
cpumask_t cpu_mask;
|
||||
|
||||
cpumask_clear(&cpu_mask);
|
||||
idle = fork_idle(cpuid);
|
||||
if (IS_ERR(idle))
|
||||
panic("SMP: fork failed for CPU:%d", cpuid);
|
||||
|
||||
task_thread_info(idle)->cpu = cpuid;
|
||||
|
||||
/* Information to the CPU that is about to boot */
|
||||
|
@ -142,9 +137,6 @@ smp_boot_one_cpu(int cpuid)
|
|||
barrier();
|
||||
}
|
||||
|
||||
put_task_struct(idle);
|
||||
idle = NULL;
|
||||
|
||||
printk(KERN_CRIT "SMP: CPU:%d is stuck.\n", cpuid);
|
||||
return -1;
|
||||
}
|
||||
|
@ -209,7 +201,7 @@ unsigned long cache_decay_ticks = 1;
|
|||
|
||||
int __cpuinit __cpu_up(unsigned int cpu, struct task_struct *tidle)
|
||||
{
|
||||
smp_boot_one_cpu(cpu);
|
||||
smp_boot_one_cpu(cpu, tidle);
|
||||
return cpu_online(cpu) ? 0 : -ENOSYS;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче