diff options
Diffstat (limited to 'arch/alpha/kernel/smp.c')
| -rw-r--r-- | arch/alpha/kernel/smp.c | 20 | 
1 files changed, 3 insertions, 17 deletions
diff --git a/arch/alpha/kernel/smp.c b/arch/alpha/kernel/smp.c index 50d438db1f6..35ddc02bfa4 100644 --- a/arch/alpha/kernel/smp.c +++ b/arch/alpha/kernel/smp.c @@ -357,24 +357,10 @@ secondary_cpu_start(int cpuid, struct task_struct *idle)   * Bring one cpu online.   */  static int __cpuinit -smp_boot_one_cpu(int cpuid) +smp_boot_one_cpu(int cpuid, struct task_struct *idle)  { -	struct task_struct *idle;  	unsigned long timeout; -	/* Cook up an idler for this guy.  Note that the address we -	   give to kernel_thread is irrelevant -- it's going to start -	   where HWRPB.CPU_restart says to start.  But this gets all -	   the other task-y sort of data structures set up like we -	   wish.  We can't use kernel_thread since we must avoid -	   rescheduling the child.  */ -	idle = fork_idle(cpuid); -	if (IS_ERR(idle)) -		panic("failed fork for CPU %d", cpuid); - -	DBGS(("smp_boot_one_cpu: CPU %d state 0x%lx flags 0x%lx\n", -	      cpuid, idle->state, idle->flags)); -  	/* Signal the secondary to wait a moment.  */  	smp_secondary_alive = -1; @@ -487,9 +473,9 @@ smp_prepare_boot_cpu(void)  }  int __cpuinit -__cpu_up(unsigned int cpu) +__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;  }  |