diff options
| author | Jeff Garzik <jeff@garzik.org> | 2006-10-05 21:03:43 -0400 |
|---|---|---|
| committer | Jeff Garzik <jeff@garzik.org> | 2006-10-05 21:03:43 -0400 |
| commit | 4ad99f15c6a3cadf36928c399459ea4fdb3d49f9 (patch) | |
| tree | d0536e4da737900fa27b235f175a3d179d692200 /arch/powerpc/kernel/time.c | |
| parent | 46767aeba58ca9357a2309765201bad38d8f5e9b (diff) | |
| parent | 44aefd2706bb6f5b65ba2c38cd89e7609e2b43d3 (diff) | |
Merge branch 'master' into upstream-fixes
Diffstat (limited to 'arch/powerpc/kernel/time.c')
| -rw-r--r-- | arch/powerpc/kernel/time.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/time.c b/arch/powerpc/kernel/time.c index 85b9244a098..d210d0a5006 100644 --- a/arch/powerpc/kernel/time.c +++ b/arch/powerpc/kernel/time.c @@ -51,6 +51,7 @@ #include <linux/rtc.h> #include <linux/jiffies.h> #include <linux/posix-timers.h> +#include <linux/irq.h> #include <asm/io.h> #include <asm/processor.h> @@ -643,6 +644,7 @@ static void iSeries_tb_recal(void) */ void timer_interrupt(struct pt_regs * regs) { + struct pt_regs *old_regs; int next_dec; int cpu = smp_processor_id(); unsigned long ticks; @@ -653,9 +655,10 @@ void timer_interrupt(struct pt_regs * regs) do_IRQ(regs); #endif + old_regs = set_irq_regs(regs); irq_enter(); - profile_tick(CPU_PROFILING, regs); + profile_tick(CPU_PROFILING); calculate_steal_time(); #ifdef CONFIG_PPC_ISERIES @@ -715,6 +718,7 @@ void timer_interrupt(struct pt_regs * regs) #endif irq_exit(); + set_irq_regs(old_regs); } void wakeup_decrementer(void) |
