diff options
Diffstat (limited to 'include/trace/irq.h')
-rw-r--r-- | include/trace/irq.h | 51 |
1 files changed, 48 insertions, 3 deletions
diff --git a/include/trace/irq.h b/include/trace/irq.h index ff5d4495dc37..04ab4c652225 100644 --- a/include/trace/irq.h +++ b/include/trace/irq.h | |||
@@ -1,9 +1,54 @@ | |||
1 | #ifndef _TRACE_IRQ_H | 1 | #if !defined(_TRACE_IRQ_H) || defined(TRACE_HEADER_MULTI_READ) |
2 | #define _TRACE_IRQ_H | 2 | #define _TRACE_IRQ_H |
3 | 3 | ||
4 | #include <linux/interrupt.h> | ||
5 | #include <linux/tracepoint.h> | 4 | #include <linux/tracepoint.h> |
5 | #include <linux/interrupt.h> | ||
6 | |||
7 | #undef TRACE_SYSTEM | ||
8 | #define TRACE_SYSTEM irq | ||
9 | |||
10 | /* | ||
11 | * Tracepoint for entry of interrupt handler: | ||
12 | */ | ||
13 | TRACE_FORMAT(irq_handler_entry, | ||
14 | TP_PROTO(int irq, struct irqaction *action), | ||
15 | TP_ARGS(irq, action), | ||
16 | TP_FMT("irq=%d handler=%s", irq, action->name) | ||
17 | ); | ||
18 | |||
19 | /* | ||
20 | * Tracepoint for return of an interrupt handler: | ||
21 | */ | ||
22 | TRACE_EVENT(irq_handler_exit, | ||
23 | |||
24 | TP_PROTO(int irq, struct irqaction *action, int ret), | ||
25 | |||
26 | TP_ARGS(irq, action, ret), | ||
27 | |||
28 | TP_STRUCT__entry( | ||
29 | __field( int, irq ) | ||
30 | __field( int, ret ) | ||
31 | ), | ||
32 | |||
33 | TP_fast_assign( | ||
34 | __entry->irq = irq; | ||
35 | __entry->ret = ret; | ||
36 | ), | ||
37 | |||
38 | TP_printk("irq=%d return=%s", | ||
39 | __entry->irq, __entry->ret ? "handled" : "unhandled") | ||
40 | ); | ||
41 | |||
42 | TRACE_FORMAT(softirq_entry, | ||
43 | TP_PROTO(struct softirq_action *h, struct softirq_action *vec), | ||
44 | TP_ARGS(h, vec), | ||
45 | TP_FMT("softirq=%d action=%s", (int)(h - vec), softirq_to_name[h-vec]) | ||
46 | ); | ||
6 | 47 | ||
7 | #include <trace/irq_event_types.h> | 48 | TRACE_FORMAT(softirq_exit, |
49 | TP_PROTO(struct softirq_action *h, struct softirq_action *vec), | ||
50 | TP_ARGS(h, vec), | ||
51 | TP_FMT("softirq=%d action=%s", (int)(h - vec), softirq_to_name[h-vec]) | ||
52 | ); | ||
8 | 53 | ||
9 | #endif | 54 | #endif |