diff options
Diffstat (limited to 'arch/alpha/kernel/smp.c')
| -rw-r--r-- | arch/alpha/kernel/smp.c | 33 | 
1 files changed, 3 insertions, 30 deletions
diff --git a/arch/alpha/kernel/smp.c b/arch/alpha/kernel/smp.c index 9dbbcb3b914..99ac36d5de4 100644 --- a/arch/alpha/kernel/smp.c +++ b/arch/alpha/kernel/smp.c @@ -138,9 +138,11 @@ smp_callin(void)  	/* Get our local ticker going. */  	smp_setup_percpu_timer(cpuid); +	init_clockevent();  	/* Call platform-specific callin, if specified */ -	if (alpha_mv.smp_callin) alpha_mv.smp_callin(); +	if (alpha_mv.smp_callin) +		alpha_mv.smp_callin();  	/* All kernel threads share the same mm context.  */  	atomic_inc(&init_mm.mm_count); @@ -498,35 +500,6 @@ smp_cpus_done(unsigned int max_cpus)  	       ((bogosum + 2500) / (5000/HZ)) % 100);  } - -void -smp_percpu_timer_interrupt(struct pt_regs *regs) -{ -	struct pt_regs *old_regs; -	int cpu = smp_processor_id(); -	unsigned long user = user_mode(regs); -	struct cpuinfo_alpha *data = &cpu_data[cpu]; - -	old_regs = set_irq_regs(regs); - -	/* Record kernel PC.  */ -	profile_tick(CPU_PROFILING); - -	if (!--data->prof_counter) { -		/* We need to make like a normal interrupt -- otherwise -		   timer interrupts ignore the global interrupt lock, -		   which would be a Bad Thing.  */ -		irq_enter(); - -		update_process_times(user); - -		data->prof_counter = data->prof_multiplier; - -		irq_exit(); -	} -	set_irq_regs(old_regs); -} -  int  setup_profiling_timer(unsigned int multiplier)  {  | 
