-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
tracing, genirq: add irq enter and exit trace events
Impact: add new tracepoints Add them to the generic IRQ code, that way every architecture gets these new tracepoints, not just x86. Using Steve's new 'TRACE_FORMAT', I can get function graph trace as follows using the original two IRQ tracepoints: 3) | handle_IRQ_event() { 3) | /* (irq_handler_entry) irq=28 handler=eth0 */ 3) | e1000_intr_msi() { 3) 2.460 us | __napi_schedule(); 3) 9.416 us | } 3) | /* (irq_handler_exit) irq=28 handler=eth0 return=handled */ 3) + 22.935 us | } Signed-off-by: Jason Baron <jbaron@redhat.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org> Acked-by: Peter Zijlstra <peterz@infradead.org> Acked-by: Masami Hiramatsu <mhiramat@redhat.com> Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Cc: Mathieu Desnoyers <compudj@krystal.dyndns.org> Cc: "Frank Ch. Eigler" <fche@redhat.com> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
- Loading branch information
Jason Baron
authored and
Ingo Molnar
committed
Feb 26, 2009
1 parent
8656e7a
commit af39241
Showing
4 changed files
with
34 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
#ifndef _TRACE_IRQ_H | ||
#define _TRACE_IRQ_H | ||
|
||
#include <linux/interrupt.h> | ||
#include <linux/tracepoint.h> | ||
|
||
#include <trace/irq_event_types.h> | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
|
||
/* use <trace/irq.h> instead */ | ||
#ifndef TRACE_FORMAT | ||
# error Do not include this file directly. | ||
# error Unless you know what you are doing. | ||
#endif | ||
|
||
TRACE_FORMAT(irq_handler_entry, | ||
TPPROTO(int irq, struct irqaction *action), | ||
TPARGS(irq, action), | ||
TPFMT("irq=%d handler=%s", irq, action->name)); | ||
|
||
TRACE_FORMAT(irq_handler_exit, | ||
TPPROTO(int irq, struct irqaction *action, int ret), | ||
TPARGS(irq, action, ret), | ||
TPFMT("irq=%d handler=%s return=%s", | ||
irq, action->name, ret ? "handled" : "unhandled")); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters