Merge remote-tracking branch 'asoc/topic/component' into asoc-next
[sfrench/cifs-2.6.git] / include / trace / events / percpu.h
1 /* SPDX-License-Identifier: GPL-2.0 */
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>