Merge tag 'iommu-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
[linux/fpc-iii.git] / include / trace / events / irq_matrix.h
blob267d4cbbf360097a3b47745e1becd0d34e0c2a6d
1 #undef TRACE_SYSTEM
2 #define TRACE_SYSTEM irq_matrix
4 #if !defined(_TRACE_IRQ_MATRIX_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define _TRACE_IRQ_MATRIX_H
7 #include <linux/tracepoint.h>
9 struct irq_matrix;
10 struct cpumap;
12 DECLARE_EVENT_CLASS(irq_matrix_global,
14 TP_PROTO(struct irq_matrix *matrix),
16 TP_ARGS(matrix),
18 TP_STRUCT__entry(
19 __field( unsigned int, online_maps )
20 __field( unsigned int, global_available )
21 __field( unsigned int, global_reserved )
22 __field( unsigned int, total_allocated )
25 TP_fast_assign(
26 __entry->online_maps = matrix->online_maps;
27 __entry->global_available = matrix->global_available;
28 __entry->global_reserved = matrix->global_reserved;
29 __entry->total_allocated = matrix->total_allocated;
32 TP_printk("online_maps=%d global_avl=%u, global_rsvd=%u, total_alloc=%u",
33 __entry->online_maps, __entry->global_available,
34 __entry->global_reserved, __entry->total_allocated)
37 DECLARE_EVENT_CLASS(irq_matrix_global_update,
39 TP_PROTO(int bit, struct irq_matrix *matrix),
41 TP_ARGS(bit, matrix),
43 TP_STRUCT__entry(
44 __field( int, bit )
45 __field( unsigned int, online_maps )
46 __field( unsigned int, global_available )
47 __field( unsigned int, global_reserved )
48 __field( unsigned int, total_allocated )
51 TP_fast_assign(
52 __entry->bit = bit;
53 __entry->online_maps = matrix->online_maps;
54 __entry->global_available = matrix->global_available;
55 __entry->global_reserved = matrix->global_reserved;
56 __entry->total_allocated = matrix->total_allocated;
59 TP_printk("bit=%d online_maps=%d global_avl=%u, global_rsvd=%u, total_alloc=%u",
60 __entry->bit, __entry->online_maps,
61 __entry->global_available, __entry->global_reserved,
62 __entry->total_allocated)
65 DECLARE_EVENT_CLASS(irq_matrix_cpu,
67 TP_PROTO(int bit, unsigned int cpu, struct irq_matrix *matrix,
68 struct cpumap *cmap),
70 TP_ARGS(bit, cpu, matrix, cmap),
72 TP_STRUCT__entry(
73 __field( int, bit )
74 __field( unsigned int, cpu )
75 __field( bool, online )
76 __field( unsigned int, available )
77 __field( unsigned int, allocated )
78 __field( unsigned int, managed )
79 __field( unsigned int, online_maps )
80 __field( unsigned int, global_available )
81 __field( unsigned int, global_reserved )
82 __field( unsigned int, total_allocated )
85 TP_fast_assign(
86 __entry->bit = bit;
87 __entry->cpu = cpu;
88 __entry->online = cmap->online;
89 __entry->available = cmap->available;
90 __entry->allocated = cmap->allocated;
91 __entry->managed = cmap->managed;
92 __entry->online_maps = matrix->online_maps;
93 __entry->global_available = matrix->global_available;
94 __entry->global_reserved = matrix->global_reserved;
95 __entry->total_allocated = matrix->total_allocated;
98 TP_printk("bit=%d cpu=%u online=%d avl=%u alloc=%u managed=%u online_maps=%u global_avl=%u, global_rsvd=%u, total_alloc=%u",
99 __entry->bit, __entry->cpu, __entry->online,
100 __entry->available, __entry->allocated,
101 __entry->managed, __entry->online_maps,
102 __entry->global_available, __entry->global_reserved,
103 __entry->total_allocated)
106 DEFINE_EVENT(irq_matrix_global, irq_matrix_online,
108 TP_PROTO(struct irq_matrix *matrix),
110 TP_ARGS(matrix)
113 DEFINE_EVENT(irq_matrix_global, irq_matrix_offline,
115 TP_PROTO(struct irq_matrix *matrix),
117 TP_ARGS(matrix)
120 DEFINE_EVENT(irq_matrix_global, irq_matrix_reserve,
122 TP_PROTO(struct irq_matrix *matrix),
124 TP_ARGS(matrix)
127 DEFINE_EVENT(irq_matrix_global, irq_matrix_remove_reserved,
129 TP_PROTO(struct irq_matrix *matrix),
131 TP_ARGS(matrix)
134 DEFINE_EVENT(irq_matrix_global_update, irq_matrix_assign_system,
136 TP_PROTO(int bit, struct irq_matrix *matrix),
138 TP_ARGS(bit, matrix)
141 DEFINE_EVENT(irq_matrix_cpu, irq_matrix_alloc_reserved,
143 TP_PROTO(int bit, unsigned int cpu,
144 struct irq_matrix *matrix, struct cpumap *cmap),
146 TP_ARGS(bit, cpu, matrix, cmap)
149 DEFINE_EVENT(irq_matrix_cpu, irq_matrix_reserve_managed,
151 TP_PROTO(int bit, unsigned int cpu,
152 struct irq_matrix *matrix, struct cpumap *cmap),
154 TP_ARGS(bit, cpu, matrix, cmap)
157 DEFINE_EVENT(irq_matrix_cpu, irq_matrix_remove_managed,
159 TP_PROTO(int bit, unsigned int cpu,
160 struct irq_matrix *matrix, struct cpumap *cmap),
162 TP_ARGS(bit, cpu, matrix, cmap)
165 DEFINE_EVENT(irq_matrix_cpu, irq_matrix_alloc_managed,
167 TP_PROTO(int bit, unsigned int cpu,
168 struct irq_matrix *matrix, struct cpumap *cmap),
170 TP_ARGS(bit, cpu, matrix, cmap)
173 DEFINE_EVENT(irq_matrix_cpu, irq_matrix_assign,
175 TP_PROTO(int bit, unsigned int cpu,
176 struct irq_matrix *matrix, struct cpumap *cmap),
178 TP_ARGS(bit, cpu, matrix, cmap)
181 DEFINE_EVENT(irq_matrix_cpu, irq_matrix_alloc,
183 TP_PROTO(int bit, unsigned int cpu,
184 struct irq_matrix *matrix, struct cpumap *cmap),
186 TP_ARGS(bit, cpu, matrix, cmap)
189 DEFINE_EVENT(irq_matrix_cpu, irq_matrix_free,
191 TP_PROTO(int bit, unsigned int cpu,
192 struct irq_matrix *matrix, struct cpumap *cmap),
194 TP_ARGS(bit, cpu, matrix, cmap)
198 #endif /* _TRACE_IRQ_H */
200 /* This part must be outside protection */
201 #include <trace/define_trace.h>