Messages in this thread Patch in this message | | | From | Vaibhav Nagarnaik <> | Subject | [PATCH v2 1/6] trace,x86: Add tracepoint to x86 timer interrupt handler | Date | Wed, 27 Jul 2011 11:57:13 -0700 |
| |
The x86 timer interrupt handler is the only handler not traced in the irq/irq_handler_{entry|exit} trace events.
Add tracepoints to the interrupt handler to trace it.
Signed-off-by: Vaibhav Nagarnaik <vnagarnaik@google.com> --- arch/x86/kernel/time.c | 15 +++++++++------ 1 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/arch/x86/kernel/time.c b/arch/x86/kernel/time.c index 5a64d05..74d2280 100644 --- a/arch/x86/kernel/time.c +++ b/arch/x86/kernel/time.c @@ -51,6 +51,13 @@ unsigned long profile_pc(struct pt_regs *regs) } EXPORT_SYMBOL(profile_pc); +static irqreturn_t timer_interrupt(int irq, void *dev_id); +static struct irqaction irq0 = { + .handler = timer_interrupt, + .flags = IRQF_DISABLED | IRQF_NOBALANCING | IRQF_IRQPOLL | IRQF_TIMER, + .name = "timer" +}; + /* * Default timer interrupt handler for PIT/HPET */ @@ -59,7 +66,9 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id) /* Keep nmi watchdog up to date */ inc_irq_stat(irq0_irqs); + trace_irq_handler_entry(irq, &irq0); global_clock_event->event_handler(global_clock_event); + trace_irq_handler_exit(irq, &irq0, 1); /* MCA bus quirk: Acknowledge irq0 by setting bit 7 in port 0x61 */ if (MCA_bus) @@ -68,12 +77,6 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id) return IRQ_HANDLED; } -static struct irqaction irq0 = { - .handler = timer_interrupt, - .flags = IRQF_DISABLED | IRQF_NOBALANCING | IRQF_IRQPOLL | IRQF_TIMER, - .name = "timer" -}; - void __init setup_default_timer_irq(void) { setup_irq(0, &irq0); -- 1.7.3.1
| |