Commit | Line | Data |
---|---|---|
b283666f | 1 | #undef TRACE_SYSTEM |
9bbf98da | 2 | #define TRACE_SYSTEM mm_vmscan |
b283666f | 3 | |
9bbf98da MD |
4 | #if !defined(LTTNG_TRACE_MM_VMSCAN_H) || defined(TRACE_HEADER_MULTI_READ) |
5 | #define LTTNG_TRACE_MM_VMSCAN_H | |
b283666f | 6 | |
3bc29f0a | 7 | #include "../../../probes/lttng-tracepoint-event.h" |
7c68b363 | 8 | #include <linux/types.h> |
7c68b363 AG |
9 | #include <linux/mm.h> |
10 | #include <linux/memcontrol.h> | |
11 | #include <trace/events/gfpflags.h> | |
12 | #include <linux/version.h> | |
13 | ||
14 | #ifndef _TRACE_VMSCAN_DEF | |
15 | #define _TRACE_VMSCAN_DEF | |
16 | #define RECLAIM_WB_ANON 0x0001u | |
17 | #define RECLAIM_WB_FILE 0x0002u | |
18 | #define RECLAIM_WB_MIXED 0x0010u | |
19 | #define RECLAIM_WB_SYNC 0x0004u /* Unused, all reclaim async */ | |
20 | #define RECLAIM_WB_ASYNC 0x0008u | |
21 | ||
7c68b363 AG |
22 | #if ((LINUX_VERSION_CODE <= KERNEL_VERSION(3,0,38)) || \ |
23 | LTTNG_KERNEL_RANGE(3,1,0, 3,2,0)) | |
24 | typedef int isolate_mode_t; | |
25 | #endif | |
26 | ||
27 | #endif | |
28 | ||
d0d29084 MD |
29 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,5,0)) |
30 | ||
31 | #include <linux/mm_inline.h> | |
32 | ||
33 | #define trace_reclaim_flags(page) ( \ | |
34 | (page_is_file_cache(page) ? RECLAIM_WB_FILE : RECLAIM_WB_ANON) | \ | |
35 | (RECLAIM_WB_ASYNC) \ | |
36 | ) | |
37 | ||
38 | #define trace_shrink_flags(file) \ | |
39 | ( \ | |
40 | (file ? RECLAIM_WB_FILE : RECLAIM_WB_ANON) | \ | |
41 | (RECLAIM_WB_ASYNC) \ | |
42 | ) | |
43 | ||
44 | #endif | |
45 | ||
3bc29f0a | 46 | LTTNG_TRACEPOINT_EVENT(mm_vmscan_kswapd_sleep, |
b283666f PW |
47 | |
48 | TP_PROTO(int nid), | |
49 | ||
50 | TP_ARGS(nid), | |
51 | ||
f127e61e MD |
52 | TP_FIELDS( |
53 | ctf_integer(int, nid, nid) | |
54 | ) | |
b283666f PW |
55 | ) |
56 | ||
3bc29f0a | 57 | LTTNG_TRACEPOINT_EVENT(mm_vmscan_kswapd_wake, |
b283666f PW |
58 | |
59 | TP_PROTO(int nid, int order), | |
60 | ||
61 | TP_ARGS(nid, order), | |
62 | ||
f127e61e MD |
63 | TP_FIELDS( |
64 | ctf_integer(int, nid, nid) | |
65 | ctf_integer(int, order, order) | |
66 | ) | |
b283666f PW |
67 | ) |
68 | ||
3bc29f0a | 69 | LTTNG_TRACEPOINT_EVENT(mm_vmscan_wakeup_kswapd, |
b283666f PW |
70 | |
71 | TP_PROTO(int nid, int zid, int order), | |
72 | ||
73 | TP_ARGS(nid, zid, order), | |
74 | ||
f127e61e MD |
75 | TP_FIELDS( |
76 | ctf_integer(int, nid, nid) | |
77 | ctf_integer(int, zid, zid) | |
78 | ctf_integer(int, order, order) | |
79 | ) | |
b283666f PW |
80 | ) |
81 | ||
3bc29f0a | 82 | LTTNG_TRACEPOINT_EVENT_CLASS(mm_vmscan_direct_reclaim_begin_template, |
b283666f PW |
83 | |
84 | TP_PROTO(int order, int may_writepage, gfp_t gfp_flags), | |
85 | ||
86 | TP_ARGS(order, may_writepage, gfp_flags), | |
87 | ||
f127e61e MD |
88 | TP_FIELDS( |
89 | ctf_integer(int, order, order) | |
90 | ctf_integer(int, may_writepage, may_writepage) | |
91 | ctf_integer(gfp_t, gfp_flags, gfp_flags) | |
92 | ) | |
b283666f PW |
93 | ) |
94 | ||
3bc29f0a | 95 | LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_direct_reclaim_begin_template, mm_vmscan_direct_reclaim_begin, |
b283666f PW |
96 | |
97 | TP_PROTO(int order, int may_writepage, gfp_t gfp_flags), | |
98 | ||
99 | TP_ARGS(order, may_writepage, gfp_flags) | |
100 | ) | |
101 | ||
3bc29f0a | 102 | LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_direct_reclaim_begin_template, mm_vmscan_memcg_reclaim_begin, |
b283666f PW |
103 | |
104 | TP_PROTO(int order, int may_writepage, gfp_t gfp_flags), | |
105 | ||
106 | TP_ARGS(order, may_writepage, gfp_flags) | |
107 | ) | |
108 | ||
3bc29f0a | 109 | LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_direct_reclaim_begin_template, mm_vmscan_memcg_softlimit_reclaim_begin, |
b283666f PW |
110 | |
111 | TP_PROTO(int order, int may_writepage, gfp_t gfp_flags), | |
112 | ||
113 | TP_ARGS(order, may_writepage, gfp_flags) | |
114 | ) | |
115 | ||
3bc29f0a | 116 | LTTNG_TRACEPOINT_EVENT_CLASS(mm_vmscan_direct_reclaim_end_template, |
b283666f PW |
117 | |
118 | TP_PROTO(unsigned long nr_reclaimed), | |
119 | ||
120 | TP_ARGS(nr_reclaimed), | |
121 | ||
f127e61e MD |
122 | TP_FIELDS( |
123 | ctf_integer(unsigned long, nr_reclaimed, nr_reclaimed) | |
124 | ) | |
b283666f PW |
125 | ) |
126 | ||
3bc29f0a | 127 | LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_direct_reclaim_end_template, mm_vmscan_direct_reclaim_end, |
b283666f PW |
128 | |
129 | TP_PROTO(unsigned long nr_reclaimed), | |
130 | ||
131 | TP_ARGS(nr_reclaimed) | |
132 | ) | |
133 | ||
3bc29f0a | 134 | LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_direct_reclaim_end_template, mm_vmscan_memcg_reclaim_end, |
b283666f PW |
135 | |
136 | TP_PROTO(unsigned long nr_reclaimed), | |
137 | ||
138 | TP_ARGS(nr_reclaimed) | |
139 | ) | |
140 | ||
3bc29f0a | 141 | LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_direct_reclaim_end_template, mm_vmscan_memcg_softlimit_reclaim_end, |
b283666f PW |
142 | |
143 | TP_PROTO(unsigned long nr_reclaimed), | |
144 | ||
145 | TP_ARGS(nr_reclaimed) | |
146 | ) | |
147 | ||
7c68b363 | 148 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0)) |
9bbf98da MD |
149 | LTTNG_TRACEPOINT_EVENT_MAP(mm_shrink_slab_start, |
150 | ||
151 | mm_vmscan_shrink_slab_start, | |
152 | ||
b283666f PW |
153 | TP_PROTO(struct shrinker *shr, struct shrink_control *sc, |
154 | long nr_objects_to_shrink, unsigned long pgs_scanned, | |
155 | unsigned long lru_pgs, unsigned long cache_items, | |
156 | unsigned long long delta, unsigned long total_scan), | |
157 | ||
158 | TP_ARGS(shr, sc, nr_objects_to_shrink, pgs_scanned, lru_pgs, | |
159 | cache_items, delta, total_scan), | |
160 | ||
f127e61e MD |
161 | TP_FIELDS( |
162 | ctf_integer(struct shrinker *, shr, shr) | |
5465fedd | 163 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) |
f127e61e | 164 | ctf_integer(void *, shrink, shr->scan_objects) |
5465fedd | 165 | #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) */ |
f127e61e | 166 | ctf_integer(void *, shrink, shr->shrink) |
5465fedd | 167 | #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) */ |
f127e61e MD |
168 | ctf_integer(long, nr_objects_to_shrink, nr_objects_to_shrink) |
169 | ctf_integer(gfp_t, gfp_flags, sc->gfp_mask) | |
170 | ctf_integer(unsigned long, pgs_scanned, pgs_scanned) | |
171 | ctf_integer(unsigned long, lru_pgs, lru_pgs) | |
172 | ctf_integer(unsigned long, cache_items, cache_items) | |
173 | ctf_integer(unsigned long long, delta, delta) | |
174 | ctf_integer(unsigned long, total_scan, total_scan) | |
175 | ) | |
b283666f PW |
176 | ) |
177 | ||
5defe623 | 178 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0)) |
9bbf98da MD |
179 | LTTNG_TRACEPOINT_EVENT_MAP(mm_shrink_slab_end, |
180 | ||
181 | mm_vmscan_shrink_slab_end, | |
182 | ||
5defe623 MD |
183 | TP_PROTO(struct shrinker *shr, int nid, int shrinker_retval, |
184 | long unused_scan_cnt, long new_scan_cnt, long total_scan), | |
185 | ||
186 | TP_ARGS(shr, nid, shrinker_retval, unused_scan_cnt, new_scan_cnt, | |
187 | total_scan), | |
188 | ||
f127e61e MD |
189 | TP_FIELDS( |
190 | ctf_integer(struct shrinker *, shr, shr) | |
191 | ctf_integer(int, nid, nid) | |
192 | ctf_integer(void *, shrink, shr->scan_objects) | |
193 | ctf_integer(long, unused_scan, unused_scan_cnt) | |
194 | ctf_integer(long, new_scan, new_scan_cnt) | |
195 | ctf_integer(int, retval, shrinker_retval) | |
196 | ctf_integer(long, total_scan, total_scan) | |
197 | ) | |
5defe623 MD |
198 | ) |
199 | #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0)) */ | |
9bbf98da MD |
200 | LTTNG_TRACEPOINT_EVENT_MAP(mm_shrink_slab_end, |
201 | ||
202 | mm_vmscan_shrink_slab_end, | |
203 | ||
b283666f PW |
204 | TP_PROTO(struct shrinker *shr, int shrinker_retval, |
205 | long unused_scan_cnt, long new_scan_cnt), | |
206 | ||
207 | TP_ARGS(shr, shrinker_retval, unused_scan_cnt, new_scan_cnt), | |
208 | ||
f127e61e MD |
209 | TP_FIELDS( |
210 | ctf_integer(struct shrinker *, shr, shr) | |
5465fedd | 211 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) |
f127e61e | 212 | ctf_integer(void *, shrink, shr->scan_objects) |
5465fedd | 213 | #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) */ |
f127e61e | 214 | ctf_integer(void *, shrink, shr->shrink) |
5465fedd | 215 | #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) */ |
f127e61e MD |
216 | ctf_integer(long, unused_scan, unused_scan_cnt) |
217 | ctf_integer(long, new_scan, new_scan_cnt) | |
218 | ctf_integer(int, retval, shrinker_retval) | |
219 | ctf_integer(long, total_scan, new_scan_cnt - unused_scan_cnt) | |
220 | ) | |
b283666f | 221 | ) |
5defe623 | 222 | #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0)) */ |
7c68b363 | 223 | #endif |
b283666f | 224 | |
3bc29f0a | 225 | LTTNG_TRACEPOINT_EVENT_CLASS(mm_vmscan_lru_isolate_template, |
b283666f PW |
226 | |
227 | TP_PROTO(int order, | |
228 | unsigned long nr_requested, | |
229 | unsigned long nr_scanned, | |
230 | unsigned long nr_taken, | |
7c68b363 | 231 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) |
b283666f PW |
232 | unsigned long nr_lumpy_taken, |
233 | unsigned long nr_lumpy_dirty, | |
234 | unsigned long nr_lumpy_failed, | |
7c68b363 | 235 | #endif |
b283666f | 236 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)) |
7c68b363 | 237 | isolate_mode_t isolate_mode |
b283666f PW |
238 | #else |
239 | isolate_mode_t isolate_mode, | |
7c68b363 | 240 | int file |
b283666f | 241 | #endif |
7c68b363 | 242 | ), |
b283666f | 243 | |
7c68b363 AG |
244 | TP_ARGS(order, nr_requested, nr_scanned, nr_taken, |
245 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) | |
246 | nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, | |
247 | #endif | |
b283666f | 248 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)) |
7c68b363 | 249 | isolate_mode |
b283666f | 250 | #else |
7c68b363 | 251 | isolate_mode, file |
b283666f | 252 | #endif |
7c68b363 AG |
253 | ), |
254 | ||
b283666f | 255 | |
f127e61e MD |
256 | TP_FIELDS( |
257 | ctf_integer(int, order, order) | |
258 | ctf_integer(unsigned long, nr_requested, nr_requested) | |
259 | ctf_integer(unsigned long, nr_scanned, nr_scanned) | |
260 | ctf_integer(unsigned long, nr_taken, nr_taken) | |
7c68b363 | 261 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) |
f127e61e MD |
262 | ctf_integer(unsigned long, nr_lumpy_taken, nr_lumpy_taken) |
263 | ctf_integer(unsigned long, nr_lumpy_dirty, nr_lumpy_dirty) | |
264 | ctf_integer(unsigned long, nr_lumpy_failed, nr_lumpy_failed) | |
7c68b363 | 265 | #endif |
f127e61e | 266 | ctf_integer(isolate_mode_t, isolate_mode, isolate_mode) |
b283666f | 267 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0)) |
f127e61e | 268 | ctf_integer(int, file, file) |
b283666f | 269 | #endif |
f127e61e | 270 | ) |
b283666f PW |
271 | ) |
272 | ||
3bc29f0a | 273 | LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_lru_isolate_template, mm_vmscan_lru_isolate, |
b283666f PW |
274 | |
275 | TP_PROTO(int order, | |
276 | unsigned long nr_requested, | |
277 | unsigned long nr_scanned, | |
278 | unsigned long nr_taken, | |
279 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) | |
280 | unsigned long nr_lumpy_taken, | |
281 | unsigned long nr_lumpy_dirty, | |
282 | unsigned long nr_lumpy_failed, | |
283 | #endif | |
284 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)) | |
7c68b363 | 285 | isolate_mode_t isolate_mode |
b283666f PW |
286 | #else |
287 | isolate_mode_t isolate_mode, | |
7c68b363 | 288 | int file |
b283666f | 289 | #endif |
7c68b363 | 290 | ), |
b283666f | 291 | |
7c68b363 AG |
292 | TP_ARGS(order, nr_requested, nr_scanned, nr_taken, |
293 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) | |
294 | nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, | |
295 | #endif | |
b283666f | 296 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)) |
7c68b363 | 297 | isolate_mode |
b283666f | 298 | #else |
7c68b363 | 299 | isolate_mode, file |
b283666f | 300 | #endif |
7c68b363 | 301 | ) |
b283666f PW |
302 | |
303 | ) | |
304 | ||
3bc29f0a | 305 | LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_lru_isolate_template, mm_vmscan_memcg_isolate, |
b283666f PW |
306 | |
307 | TP_PROTO(int order, | |
308 | unsigned long nr_requested, | |
309 | unsigned long nr_scanned, | |
310 | unsigned long nr_taken, | |
311 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) | |
312 | unsigned long nr_lumpy_taken, | |
313 | unsigned long nr_lumpy_dirty, | |
314 | unsigned long nr_lumpy_failed, | |
315 | #endif | |
316 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)) | |
7c68b363 | 317 | isolate_mode_t isolate_mode |
b283666f PW |
318 | #else |
319 | isolate_mode_t isolate_mode, | |
7c68b363 | 320 | int file |
b283666f | 321 | #endif |
7c68b363 | 322 | ), |
b283666f | 323 | |
7c68b363 AG |
324 | TP_ARGS(order, nr_requested, nr_scanned, nr_taken, |
325 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) | |
326 | nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, | |
327 | #endif | |
b283666f | 328 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)) |
7c68b363 | 329 | isolate_mode |
b283666f | 330 | #else |
7c68b363 | 331 | isolate_mode, file |
b283666f | 332 | #endif |
7c68b363 | 333 | ) |
b283666f PW |
334 | ) |
335 | ||
d0d29084 MD |
336 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,5,0)) |
337 | LTTNG_TRACEPOINT_EVENT(mm_vmscan_writepage, | |
338 | ||
339 | TP_PROTO(struct page *page), | |
340 | ||
341 | TP_ARGS(page), | |
342 | ||
343 | TP_FIELDS( | |
344 | ctf_integer(struct page *, page, page) | |
345 | ctf_integer(int, reclaim_flags, trace_reclaim_flags(page)) | |
346 | ) | |
347 | ) | |
348 | #else | |
3bc29f0a | 349 | LTTNG_TRACEPOINT_EVENT(mm_vmscan_writepage, |
b283666f PW |
350 | |
351 | TP_PROTO(struct page *page, | |
352 | int reclaim_flags), | |
353 | ||
354 | TP_ARGS(page, reclaim_flags), | |
355 | ||
f127e61e MD |
356 | TP_FIELDS( |
357 | ctf_integer(struct page *, page, page) | |
358 | ctf_integer(int, reclaim_flags, reclaim_flags) | |
359 | ) | |
b283666f | 360 | ) |
d0d29084 MD |
361 | #endif |
362 | ||
363 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,5,0)) | |
364 | LTTNG_TRACEPOINT_EVENT(mm_vmscan_lru_shrink_inactive, | |
365 | ||
366 | TP_PROTO(struct zone *zone, | |
367 | unsigned long nr_scanned, unsigned long nr_reclaimed, | |
368 | int priority, int file), | |
b283666f | 369 | |
d0d29084 MD |
370 | TP_ARGS(zone, nr_scanned, nr_reclaimed, priority, file), |
371 | ||
372 | TP_FIELDS( | |
373 | ctf_integer(int, nid, zone_to_nid(zone)) | |
374 | ctf_integer(int, zid, zone_idx(zone)) | |
375 | ctf_integer(unsigned long, nr_scanned, nr_scanned) | |
376 | ctf_integer(unsigned long, nr_reclaimed, nr_reclaimed) | |
377 | ctf_integer(int, priority, priority) | |
378 | ctf_integer(int, reclaim_flags, trace_shrink_flags(file)) | |
379 | ) | |
380 | ) | |
381 | #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) | |
3bc29f0a | 382 | LTTNG_TRACEPOINT_EVENT(mm_vmscan_lru_shrink_inactive, |
b283666f PW |
383 | |
384 | TP_PROTO(int nid, int zid, | |
385 | unsigned long nr_scanned, unsigned long nr_reclaimed, | |
386 | int priority, int reclaim_flags), | |
387 | ||
388 | TP_ARGS(nid, zid, nr_scanned, nr_reclaimed, priority, reclaim_flags), | |
389 | ||
f127e61e MD |
390 | TP_FIELDS( |
391 | ctf_integer(int, nid, nid) | |
392 | ctf_integer(int, zid, zid) | |
393 | ctf_integer(unsigned long, nr_scanned, nr_scanned) | |
394 | ctf_integer(unsigned long, nr_reclaimed, nr_reclaimed) | |
395 | ctf_integer(int, priority, priority) | |
396 | ctf_integer(int, reclaim_flags, reclaim_flags) | |
397 | ) | |
b283666f | 398 | ) |
7c68b363 | 399 | #endif |
b283666f PW |
400 | |
401 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) | |
3bc29f0a | 402 | LTTNG_TRACEPOINT_EVENT_MAP(replace_swap_token, |
9cf29d3e MD |
403 | |
404 | mm_vmscan_replace_swap_token, | |
405 | ||
b283666f PW |
406 | TP_PROTO(struct mm_struct *old_mm, |
407 | struct mm_struct *new_mm), | |
408 | ||
409 | TP_ARGS(old_mm, new_mm), | |
410 | ||
f127e61e MD |
411 | TP_FIELDS( |
412 | ctf_integer(struct mm_struct *, old_mm, old_mm) | |
413 | ctf_integer(unsigned int, old_prio, old_mm ? old_mm->token_priority : 0) | |
414 | ctf_integer(struct mm_struct *, new_mm, new_mm) | |
415 | ctf_integer(unsigned int, new_prio, new_mm->token_priority) | |
416 | ) | |
b283666f PW |
417 | ) |
418 | ||
3bc29f0a | 419 | LTTNG_TRACEPOINT_EVENT_CLASS(mm_vmscan_put_swap_token_template, |
b283666f PW |
420 | TP_PROTO(struct mm_struct *swap_token_mm), |
421 | ||
422 | TP_ARGS(swap_token_mm), | |
423 | ||
f127e61e MD |
424 | TP_FIELDS( |
425 | ctf_integer(struct mm_struct*, swap_token_mm, swap_token_mm) | |
426 | ) | |
b283666f PW |
427 | ) |
428 | ||
3bc29f0a | 429 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(mm_vmscan_put_swap_token_template, put_swap_token, |
9cf29d3e MD |
430 | |
431 | mm_vmscan_put_swap_token, | |
432 | ||
b283666f PW |
433 | TP_PROTO(struct mm_struct *swap_token_mm), |
434 | TP_ARGS(swap_token_mm) | |
435 | ) | |
436 | ||
f127e61e | 437 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(mm_vmscan_put_swap_token_template, disable_swap_token, |
9cf29d3e MD |
438 | |
439 | mm_vmscan_disable_swap_token, | |
440 | ||
b283666f | 441 | TP_PROTO(struct mm_struct *swap_token_mm), |
f127e61e | 442 | TP_ARGS(swap_token_mm) |
b283666f PW |
443 | ) |
444 | ||
f127e61e | 445 | LTTNG_TRACEPOINT_EVENT_MAP(update_swap_token_priority, |
9cf29d3e MD |
446 | |
447 | mm_vmscan_update_swap_token_priority, | |
448 | ||
b283666f PW |
449 | TP_PROTO(struct mm_struct *mm, |
450 | unsigned int old_prio, | |
451 | struct mm_struct *swap_token_mm), | |
452 | ||
453 | TP_ARGS(mm, old_prio, swap_token_mm), | |
454 | ||
f127e61e MD |
455 | TP_FIELDS( |
456 | ctf_integer(struct mm_struct*, mm, mm) | |
457 | ctf_integer(unsigned int, old_prio, old_prio) | |
458 | ctf_integer(unsigned int, new_prio, mm->token_priority) | |
459 | ctf_integer(struct mm_struct*, swap_token_mm, swap_token_mm) | |
460 | ctf_integer(unsigned int, swap_token_prio, swap_token_mm ? swap_token_mm->token_priority : 0) | |
461 | ) | |
b283666f | 462 | ) |
b283666f PW |
463 | #endif |
464 | ||
9bbf98da | 465 | #endif /* LTTNG_TRACE_MM_VMSCAN_H */ |
b283666f PW |
466 | |
467 | /* This part must be outside protection */ | |
468 | #include "../../../probes/define_trace.h" |