Commit bdc8b891 authored by Michael Cree's avatar Michael Cree Committed by Matt Turner

alpha: Shift perf event pending work earlier in timer interrupt

Pending work from the performance event subsystem is executed in
the timer interrupt.  This patch shifts the call to
perf_event_do_pending() before the call to update_process_times()
as the latter may call back into the perf event subsystem and it
is prudent to have the pending work executed first.
Signed-off-by: default avatarMichael Cree <mcree@orcon.net.nz>
Signed-off-by: default avatarMatt Turner <mattst88@gmail.com>
parent 531f0474
...@@ -191,16 +191,16 @@ irqreturn_t timer_interrupt(int irq, void *dev) ...@@ -191,16 +191,16 @@ irqreturn_t timer_interrupt(int irq, void *dev)
write_sequnlock(&xtime_lock); write_sequnlock(&xtime_lock);
#ifndef CONFIG_SMP
while (nticks--)
update_process_times(user_mode(get_irq_regs()));
#endif
if (test_perf_event_pending()) { if (test_perf_event_pending()) {
clear_perf_event_pending(); clear_perf_event_pending();
perf_event_do_pending(); perf_event_do_pending();
} }
#ifndef CONFIG_SMP
while (nticks--)
update_process_times(user_mode(get_irq_regs()));
#endif
return IRQ_HANDLED; return IRQ_HANDLED;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment