2 #define TRACE_SYSTEM hist
4 #if !defined(_TRACE_HIST_H) || defined(TRACE_HEADER_MULTI_READ)
7 #include "latency_hist.h"
8 #include <linux/tracepoint.h>
10 #if !defined(CONFIG_PREEMPT_OFF_HIST) && !defined(CONFIG_INTERRUPT_OFF_HIST)
11 #define trace_preemptirqsoff_hist(a, b)
12 #define trace_preemptirqsoff_hist_rcuidle(a, b)
14 TRACE_EVENT(preemptirqsoff_hist,
16 TP_PROTO(int reason, int starthist),
18 TP_ARGS(reason, starthist),
22 __field(int, starthist)
26 __entry->reason = reason;
27 __entry->starthist = starthist;
30 TP_printk("reason=%s starthist=%s", getaction(__entry->reason),
31 __entry->starthist ? "start" : "stop")
35 #ifndef CONFIG_MISSED_TIMER_OFFSETS_HIST
36 #define trace_hrtimer_interrupt(a, b, c, d)
38 TRACE_EVENT(hrtimer_interrupt,
40 TP_PROTO(int cpu, long long offset, struct task_struct *curr,
41 struct task_struct *task),
43 TP_ARGS(cpu, offset, curr, task),
47 __field(long long, offset)
48 __array(char, ccomm, TASK_COMM_LEN)
50 __array(char, tcomm, TASK_COMM_LEN)
56 __entry->offset = offset;
57 memcpy(__entry->ccomm, curr->comm, TASK_COMM_LEN);
58 __entry->cprio = curr->prio;
59 memcpy(__entry->tcomm, task != NULL ? task->comm : "<none>",
60 task != NULL ? TASK_COMM_LEN : 7);
61 __entry->tprio = task != NULL ? task->prio : -1;
64 TP_printk("cpu=%d offset=%lld curr=%s[%d] thread=%s[%d]",
65 __entry->cpu, __entry->offset, __entry->ccomm,
66 __entry->cprio, __entry->tcomm, __entry->tprio)
70 #endif /* _TRACE_HIST_H */
72 /* This part must be outside protection */
73 #include <trace/define_trace.h>