diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2012-04-20 09:05:54 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2012-04-26 06:06:12 -0400 |
commit | ea0588cb6b201c38b0120c4ad38bc548d5dde29a (patch) | |
tree | 9debf340ff58725e4d5b7c0f6bd7283d35cc125c /arch/sh/kernel/smp.c | |
parent | 6bba2682c62e432eaf7b82f8ca182e8c73256e74 (diff) |
sh: 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: Paul Mundt <lethal@linux-sh.org>
Link: http://lkml.kernel.org/r/20120420124557.855203626@linutronix.de
Diffstat (limited to 'arch/sh/kernel/smp.c')
-rw-r--r-- | arch/sh/kernel/smp.c | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/arch/sh/kernel/smp.c b/arch/sh/kernel/smp.c index ebb76e2a748b..b86e9ca79455 100644 --- a/arch/sh/kernel/smp.c +++ b/arch/sh/kernel/smp.c | |||
@@ -220,22 +220,10 @@ extern struct { | |||
220 | void *thread_info; | 220 | void *thread_info; |
221 | } stack_start; | 221 | } stack_start; |
222 | 222 | ||
223 | int __cpuinit __cpu_up(unsigned int cpu, struct task_struct *tidle) | 223 | int __cpuinit __cpu_up(unsigned int cpu, struct task_struct *tsk) |
224 | { | 224 | { |
225 | struct task_struct *tsk; | ||
226 | unsigned long timeout; | 225 | unsigned long timeout; |
227 | 226 | ||
228 | tsk = cpu_data[cpu].idle; | ||
229 | if (!tsk) { | ||
230 | tsk = fork_idle(cpu); | ||
231 | if (IS_ERR(tsk)) { | ||
232 | pr_err("Failed forking idle task for cpu %d\n", cpu); | ||
233 | return PTR_ERR(tsk); | ||
234 | } | ||
235 | |||
236 | cpu_data[cpu].idle = tsk; | ||
237 | } | ||
238 | |||
239 | per_cpu(cpu_state, cpu) = CPU_UP_PREPARE; | 227 | per_cpu(cpu_state, cpu) = CPU_UP_PREPARE; |
240 | 228 | ||
241 | /* Fill in data in head.S for secondary cpus */ | 229 | /* Fill in data in head.S for secondary cpus */ |