1 #if !defined(_TRACE_KMEM_H) || defined(TRACE_HEADER_MULTI_READ)
4 #include <linux/types.h>
5 #include <linux/tracepoint.h>
8 #define TRACE_SYSTEM kmem
12 TP_PROTO(unsigned long call_site,
18 TP_ARGS(call_site, ptr, bytes_req, bytes_alloc, gfp_flags),
21 __field( unsigned long, call_site )
22 __field( const void *, ptr )
23 __field( size_t, bytes_req )
24 __field( size_t, bytes_alloc )
25 __field( gfp_t, gfp_flags )
29 __entry->call_site = call_site;
31 __entry->bytes_req = bytes_req;
32 __entry->bytes_alloc = bytes_alloc;
33 __entry->gfp_flags = gfp_flags;
36 TP_printk("call_site=%lx ptr=%p bytes_req=%zu bytes_alloc=%zu gfp_flags=%08x",
44 TRACE_EVENT(kmem_cache_alloc,
46 TP_PROTO(unsigned long call_site,
52 TP_ARGS(call_site, ptr, bytes_req, bytes_alloc, gfp_flags),
55 __field( unsigned long, call_site )
56 __field( const void *, ptr )
57 __field( size_t, bytes_req )
58 __field( size_t, bytes_alloc )
59 __field( gfp_t, gfp_flags )
63 __entry->call_site = call_site;
65 __entry->bytes_req = bytes_req;
66 __entry->bytes_alloc = bytes_alloc;
67 __entry->gfp_flags = gfp_flags;
70 TP_printk("call_site=%lx ptr=%p bytes_req=%zu bytes_alloc=%zu gfp_flags=%08x",
78 TRACE_EVENT(kmalloc_node,
80 TP_PROTO(unsigned long call_site,
87 TP_ARGS(call_site, ptr, bytes_req, bytes_alloc, gfp_flags, node),
90 __field( unsigned long, call_site )
91 __field( const void *, ptr )
92 __field( size_t, bytes_req )
93 __field( size_t, bytes_alloc )
94 __field( gfp_t, gfp_flags )
99 __entry->call_site = call_site;
101 __entry->bytes_req = bytes_req;
102 __entry->bytes_alloc = bytes_alloc;
103 __entry->gfp_flags = gfp_flags;
104 __entry->node = node;
107 TP_printk("call_site=%lx ptr=%p bytes_req=%zu bytes_alloc=%zu gfp_flags=%08x node=%d",
111 __entry->bytes_alloc,
116 TRACE_EVENT(kmem_cache_alloc_node,
118 TP_PROTO(unsigned long call_site,
125 TP_ARGS(call_site, ptr, bytes_req, bytes_alloc, gfp_flags, node),
128 __field( unsigned long, call_site )
129 __field( const void *, ptr )
130 __field( size_t, bytes_req )
131 __field( size_t, bytes_alloc )
132 __field( gfp_t, gfp_flags )
137 __entry->call_site = call_site;
139 __entry->bytes_req = bytes_req;
140 __entry->bytes_alloc = bytes_alloc;
141 __entry->gfp_flags = gfp_flags;
142 __entry->node = node;
145 TP_printk("call_site=%lx ptr=%p bytes_req=%zu bytes_alloc=%zu gfp_flags=%08x node=%d",
149 __entry->bytes_alloc,
156 TP_PROTO(unsigned long call_site, const void *ptr),
158 TP_ARGS(call_site, ptr),
161 __field( unsigned long, call_site )
162 __field( const void *, ptr )
166 __entry->call_site = call_site;
170 TP_printk("call_site=%lx ptr=%p", __entry->call_site, __entry->ptr)
173 TRACE_EVENT(kmem_cache_free,
175 TP_PROTO(unsigned long call_site, const void *ptr),
177 TP_ARGS(call_site, ptr),
180 __field( unsigned long, call_site )
181 __field( const void *, ptr )
185 __entry->call_site = call_site;
189 TP_printk("call_site=%lx ptr=%p", __entry->call_site, __entry->ptr)
191 #endif /* _TRACE_KMEM_H */
193 /* This part must be outside protection */
194 #include <trace/define_trace.h>