]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
df95e795 DZ |
2 | #undef TRACE_SYSTEM |
3 | #define TRACE_SYSTEM percpu | |
4 | ||
5 | #if !defined(_TRACE_PERCPU_H) || defined(TRACE_HEADER_MULTI_READ) | |
6 | #define _TRACE_PERCPU_H | |
7 | ||
8 | #include <linux/tracepoint.h> | |
9 | ||
10 | TRACE_EVENT(percpu_alloc_percpu, | |
11 | ||
12 | TP_PROTO(bool reserved, bool is_atomic, size_t size, | |
13 | size_t align, void *base_addr, int off, void __percpu *ptr), | |
14 | ||
15 | TP_ARGS(reserved, is_atomic, size, align, base_addr, off, ptr), | |
16 | ||
17 | TP_STRUCT__entry( | |
18 | __field( bool, reserved ) | |
19 | __field( bool, is_atomic ) | |
20 | __field( size_t, size ) | |
21 | __field( size_t, align ) | |
22 | __field( void *, base_addr ) | |
23 | __field( int, off ) | |
24 | __field( void __percpu *, ptr ) | |
25 | ), | |
26 | ||
27 | TP_fast_assign( | |
28 | __entry->reserved = reserved; | |
29 | __entry->is_atomic = is_atomic; | |
30 | __entry->size = size; | |
31 | __entry->align = align; | |
32 | __entry->base_addr = base_addr; | |
33 | __entry->off = off; | |
34 | __entry->ptr = ptr; | |
35 | ), | |
36 | ||
37 | TP_printk("reserved=%d is_atomic=%d size=%zu align=%zu base_addr=%p off=%d ptr=%p", | |
38 | __entry->reserved, __entry->is_atomic, | |
39 | __entry->size, __entry->align, | |
40 | __entry->base_addr, __entry->off, __entry->ptr) | |
41 | ); | |
42 | ||
43 | TRACE_EVENT(percpu_free_percpu, | |
44 | ||
45 | TP_PROTO(void *base_addr, int off, void __percpu *ptr), | |
46 | ||
47 | TP_ARGS(base_addr, off, ptr), | |
48 | ||
49 | TP_STRUCT__entry( | |
50 | __field( void *, base_addr ) | |
51 | __field( int, off ) | |
52 | __field( void __percpu *, ptr ) | |
53 | ), | |
54 | ||
55 | TP_fast_assign( | |
56 | __entry->base_addr = base_addr; | |
57 | __entry->off = off; | |
58 | __entry->ptr = ptr; | |
59 | ), | |
60 | ||
61 | TP_printk("base_addr=%p off=%d ptr=%p", | |
62 | __entry->base_addr, __entry->off, __entry->ptr) | |
63 | ); | |
64 | ||
65 | TRACE_EVENT(percpu_alloc_percpu_fail, | |
66 | ||
67 | TP_PROTO(bool reserved, bool is_atomic, size_t size, size_t align), | |
68 | ||
69 | TP_ARGS(reserved, is_atomic, size, align), | |
70 | ||
71 | TP_STRUCT__entry( | |
72 | __field( bool, reserved ) | |
73 | __field( bool, is_atomic ) | |
74 | __field( size_t, size ) | |
75 | __field( size_t, align ) | |
76 | ), | |
77 | ||
78 | TP_fast_assign( | |
79 | __entry->reserved = reserved; | |
80 | __entry->is_atomic = is_atomic; | |
81 | __entry->size = size; | |
82 | __entry->align = align; | |
83 | ), | |
84 | ||
85 | TP_printk("reserved=%d is_atomic=%d size=%zu align=%zu", | |
86 | __entry->reserved, __entry->is_atomic, | |
87 | __entry->size, __entry->align) | |
88 | ); | |
89 | ||
90 | TRACE_EVENT(percpu_create_chunk, | |
91 | ||
92 | TP_PROTO(void *base_addr), | |
93 | ||
94 | TP_ARGS(base_addr), | |
95 | ||
96 | TP_STRUCT__entry( | |
97 | __field( void *, base_addr ) | |
98 | ), | |
99 | ||
100 | TP_fast_assign( | |
101 | __entry->base_addr = base_addr; | |
102 | ), | |
103 | ||
104 | TP_printk("base_addr=%p", __entry->base_addr) | |
105 | ); | |
106 | ||
107 | TRACE_EVENT(percpu_destroy_chunk, | |
108 | ||
109 | TP_PROTO(void *base_addr), | |
110 | ||
111 | TP_ARGS(base_addr), | |
112 | ||
113 | TP_STRUCT__entry( | |
114 | __field( void *, base_addr ) | |
115 | ), | |
116 | ||
117 | TP_fast_assign( | |
118 | __entry->base_addr = base_addr; | |
119 | ), | |
120 | ||
121 | TP_printk("base_addr=%p", __entry->base_addr) | |
122 | ); | |
123 | ||
124 | #endif /* _TRACE_PERCPU_H */ | |
125 | ||
126 | #include <trace/define_trace.h> |