Fix: support ext4_journal_start on EL 8.4+
[lttng-modules.git] / include / instrumentation / events / ext4.h
CommitLineData
b7cdc182 1/* SPDX-License-Identifier: GPL-2.0-only */
b87700e3
AG
2#undef TRACE_SYSTEM
3#define TRACE_SYSTEM ext4
4
3bc29f0a
MD
5#if !defined(LTTNG_TRACE_EXT4_H) || defined(TRACE_HEADER_MULTI_READ)
6#define LTTNG_TRACE_EXT4_H
b87700e3 7
3b4aafcb 8#include <lttng/tracepoint-event.h>
b87700e3 9#include <linux/writeback.h>
5f4c791e 10#include <lttng/kernel-version.h>
b87700e3
AG
11
12#ifndef _TRACE_EXT4_DEF_
13#define _TRACE_EXT4_DEF_
14struct ext4_allocation_context;
15struct ext4_allocation_request;
16struct ext4_prealloc_space;
17struct ext4_inode_info;
18struct mpage_da_data;
19struct ext4_map_blocks;
b87700e3
AG
20struct ext4_extent;
21#endif
b87700e3
AG
22
23#define EXT4_I(inode) (container_of(inode, struct ext4_inode_info, vfs_inode))
b87700e3 24#define TP_MODE_T __u16
b87700e3 25
3bc29f0a 26LTTNG_TRACEPOINT_EVENT(ext4_free_inode,
b87700e3
AG
27 TP_PROTO(struct inode *inode),
28
29 TP_ARGS(inode),
30
f127e61e
MD
31 TP_FIELDS(
32 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
33 ctf_integer(ino_t, ino, inode->i_ino)
f127e61e
MD
34 ctf_integer(uid_t, uid, i_uid_read(inode))
35 ctf_integer(gid_t, gid, i_gid_read(inode))
f127e61e
MD
36 ctf_integer(__u64, blocks, inode->i_blocks)
37 ctf_integer(TP_MODE_T, mode, inode->i_mode)
38 )
b87700e3
AG
39)
40
3bc29f0a 41LTTNG_TRACEPOINT_EVENT(ext4_request_inode,
b87700e3
AG
42 TP_PROTO(struct inode *dir, int mode),
43
44 TP_ARGS(dir, mode),
45
f127e61e
MD
46 TP_FIELDS(
47 ctf_integer(dev_t, dev, dir->i_sb->s_dev)
48 ctf_integer(ino_t, dir, dir->i_ino)
49 ctf_integer(TP_MODE_T, mode, mode)
50 )
b87700e3
AG
51)
52
3bc29f0a 53LTTNG_TRACEPOINT_EVENT(ext4_allocate_inode,
b87700e3
AG
54 TP_PROTO(struct inode *inode, struct inode *dir, int mode),
55
56 TP_ARGS(inode, dir, mode),
57
f127e61e
MD
58 TP_FIELDS(
59 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
60 ctf_integer(ino_t, ino, inode->i_ino)
61 ctf_integer(ino_t, dir, dir->i_ino)
62 ctf_integer(TP_MODE_T, mode, mode)
63 )
b87700e3
AG
64)
65
3bc29f0a 66LTTNG_TRACEPOINT_EVENT(ext4_evict_inode,
b87700e3
AG
67 TP_PROTO(struct inode *inode),
68
69 TP_ARGS(inode),
70
f127e61e
MD
71 TP_FIELDS(
72 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
73 ctf_integer(ino_t, ino, inode->i_ino)
74 ctf_integer(int, nlink, inode->i_nlink)
75 )
b87700e3
AG
76)
77
3bc29f0a 78LTTNG_TRACEPOINT_EVENT(ext4_drop_inode,
b87700e3
AG
79 TP_PROTO(struct inode *inode, int drop),
80
81 TP_ARGS(inode, drop),
82
f127e61e
MD
83 TP_FIELDS(
84 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
85 ctf_integer(ino_t, ino, inode->i_ino)
86 ctf_integer(int, drop, drop)
87 )
b87700e3
AG
88)
89
3bc29f0a 90LTTNG_TRACEPOINT_EVENT(ext4_mark_inode_dirty,
b87700e3
AG
91 TP_PROTO(struct inode *inode, unsigned long IP),
92
93 TP_ARGS(inode, IP),
94
f127e61e
MD
95 TP_FIELDS(
96 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
97 ctf_integer(ino_t, ino, inode->i_ino)
2c054599 98 ctf_integer_hex(unsigned long, ip, IP)
f127e61e 99 )
b87700e3
AG
100)
101
3bc29f0a 102LTTNG_TRACEPOINT_EVENT(ext4_begin_ordered_truncate,
b87700e3
AG
103 TP_PROTO(struct inode *inode, loff_t new_size),
104
105 TP_ARGS(inode, new_size),
106
f127e61e
MD
107 TP_FIELDS(
108 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
109 ctf_integer(ino_t, ino, inode->i_ino)
110 ctf_integer(loff_t, new_size, new_size)
111 )
b87700e3 112)
b87700e3 113
5e2f832d
MJ
114#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,19,0))
115LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_begin,
116
117 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len),
118
119 TP_ARGS(inode, pos, len),
120
121 TP_FIELDS(
122 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
123 ctf_integer(ino_t, ino, inode->i_ino)
124 ctf_integer(loff_t, pos, pos)
125 ctf_integer(unsigned int, len, len)
126 )
127)
128
129LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin, ext4_write_begin,
130
131 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len),
132
133 TP_ARGS(inode, pos, len)
134)
135
136LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin, ext4_da_write_begin,
137
138 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len),
139
140 TP_ARGS(inode, pos, len)
141)
142#else
3bc29f0a 143LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_begin,
b87700e3
AG
144
145 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
146 unsigned int flags),
147
148 TP_ARGS(inode, pos, len, flags),
149
f127e61e
MD
150 TP_FIELDS(
151 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
152 ctf_integer(ino_t, ino, inode->i_ino)
153 ctf_integer(loff_t, pos, pos)
154 ctf_integer(unsigned int, len, len)
155 ctf_integer(unsigned int, flags, flags)
156 )
b87700e3
AG
157)
158
3bc29f0a 159LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin, ext4_write_begin,
b87700e3
AG
160
161 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
162 unsigned int flags),
163
164 TP_ARGS(inode, pos, len, flags)
165)
166
3bc29f0a 167LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin, ext4_da_write_begin,
b87700e3
AG
168
169 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
170 unsigned int flags),
171
172 TP_ARGS(inode, pos, len, flags)
173)
09b8e4f6 174#endif /* (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,19,0)) */
b87700e3 175
3bc29f0a 176LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_end,
b87700e3
AG
177 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
178 unsigned int copied),
179
180 TP_ARGS(inode, pos, len, copied),
181
f127e61e
MD
182 TP_FIELDS(
183 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
184 ctf_integer(ino_t, ino, inode->i_ino)
185 ctf_integer(loff_t, pos, pos)
186 ctf_integer(unsigned int, len, len)
187 ctf_integer(unsigned int, copied, copied)
188 )
b87700e3
AG
189)
190
3bc29f0a 191LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end, ext4_ordered_write_end,
b87700e3
AG
192
193 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
194 unsigned int copied),
195
196 TP_ARGS(inode, pos, len, copied)
197)
198
3bc29f0a 199LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end, ext4_writeback_write_end,
b87700e3
AG
200
201 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
202 unsigned int copied),
203
204 TP_ARGS(inode, pos, len, copied)
205)
206
3bc29f0a 207LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end, ext4_journalled_write_end,
b87700e3
AG
208
209 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
210 unsigned int copied),
211
212 TP_ARGS(inode, pos, len, copied)
213)
214
3bc29f0a 215LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end, ext4_da_write_end,
b87700e3
AG
216
217 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
218 unsigned int copied),
219
220 TP_ARGS(inode, pos, len, copied)
221)
222
3bc29f0a 223LTTNG_TRACEPOINT_EVENT(ext4_da_writepages,
b87700e3
AG
224 TP_PROTO(struct inode *inode, struct writeback_control *wbc),
225
226 TP_ARGS(inode, wbc),
227
f127e61e
MD
228 TP_FIELDS(
229 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
230 ctf_integer(ino_t, ino, inode->i_ino)
231 ctf_integer(long, nr_to_write, wbc->nr_to_write)
232 ctf_integer(long, pages_skipped, wbc->pages_skipped)
233 ctf_integer(loff_t, range_start, wbc->range_start)
234 ctf_integer(loff_t, range_end, wbc->range_end)
235 ctf_integer(pgoff_t, writeback_index, inode->i_mapping->writeback_index)
f127e61e 236 ctf_integer(int, sync_mode, wbc->sync_mode)
f127e61e 237 ctf_integer(char, for_kupdate, wbc->for_kupdate)
f127e61e
MD
238 ctf_integer(char, range_cyclic, wbc->range_cyclic)
239 )
b87700e3
AG
240)
241
3bc29f0a 242LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages,
00be8842
MD
243 TP_PROTO(struct inode *inode, pgoff_t first_page,
244 struct writeback_control *wbc),
245
246 TP_ARGS(inode, first_page, wbc),
247
f127e61e
MD
248 TP_FIELDS(
249 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
250 ctf_integer(ino_t, ino, inode->i_ino)
251 ctf_integer(pgoff_t, first_page, first_page)
252 ctf_integer(long, nr_to_write, wbc->nr_to_write)
253 ctf_integer(int, sync_mode, wbc->sync_mode)
254 )
00be8842
MD
255)
256
3bc29f0a 257LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages_extent,
c1b29b59
MD
258 TP_PROTO(struct inode *inode, struct ext4_map_blocks *map),
259
260 TP_ARGS(inode, map),
261
f127e61e
MD
262 TP_FIELDS(
263 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
264 ctf_integer(ino_t, ino, inode->i_ino)
265 ctf_integer(__u64, lblk, map->m_lblk)
266 ctf_integer(__u32, len, map->m_len)
267 ctf_integer(__u32, flags, map->m_flags)
268 )
c1b29b59
MD
269)
270
3bc29f0a 271LTTNG_TRACEPOINT_EVENT(ext4_da_writepages_result,
b87700e3
AG
272 TP_PROTO(struct inode *inode, struct writeback_control *wbc,
273 int ret, int pages_written),
274
275 TP_ARGS(inode, wbc, ret, pages_written),
276
f127e61e
MD
277 TP_FIELDS(
278 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
279 ctf_integer(ino_t, ino, inode->i_ino)
280 ctf_integer(int, ret, ret)
281 ctf_integer(int, pages_written, pages_written)
282 ctf_integer(long, pages_skipped, wbc->pages_skipped)
283 ctf_integer(pgoff_t, writeback_index, inode->i_mapping->writeback_index)
f127e61e 284 ctf_integer(int, sync_mode, wbc->sync_mode)
f127e61e 285 )
b87700e3
AG
286)
287
3bc29f0a 288LTTNG_TRACEPOINT_EVENT_CLASS(ext4__page_op,
b87700e3
AG
289 TP_PROTO(struct page *page),
290
291 TP_ARGS(page),
292
f127e61e
MD
293 TP_FIELDS(
294 ctf_integer(dev_t, dev, page->mapping->host->i_sb->s_dev)
295 ctf_integer(ino_t, ino, page->mapping->host->i_ino)
296 ctf_integer(pgoff_t, index, page->index)
297 )
b87700e3
AG
298)
299
3bc29f0a 300LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op, ext4_writepage,
b87700e3
AG
301
302 TP_PROTO(struct page *page),
303
304 TP_ARGS(page)
305)
b87700e3 306
3bc29f0a 307LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op, ext4_readpage,
b87700e3
AG
308
309 TP_PROTO(struct page *page),
310
311 TP_ARGS(page)
312)
313
3bc29f0a 314LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op, ext4_releasepage,
b87700e3
AG
315
316 TP_PROTO(struct page *page),
317
318 TP_ARGS(page)
319)
320
3bc29f0a 321LTTNG_TRACEPOINT_EVENT_CLASS(ext4_invalidatepage_op,
00be8842
MD
322 TP_PROTO(struct page *page, unsigned int offset, unsigned int length),
323
324 TP_ARGS(page, offset, length),
325
f127e61e
MD
326 TP_FIELDS(
327 ctf_integer(dev_t, dev, page->mapping->host->i_sb->s_dev)
328 ctf_integer(ino_t, ino, page->mapping->host->i_ino)
329 ctf_integer(pgoff_t, index, page->index)
330 ctf_integer(unsigned int, offset, offset)
331 ctf_integer(unsigned int, length, length)
332 )
00be8842
MD
333)
334
3bc29f0a 335LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4_invalidatepage_op, ext4_invalidatepage,
00be8842
MD
336 TP_PROTO(struct page *page, unsigned int offset, unsigned int length),
337
338 TP_ARGS(page, offset, length)
339)
340
3bc29f0a 341LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4_invalidatepage_op, ext4_journalled_invalidatepage,
00be8842
MD
342 TP_PROTO(struct page *page, unsigned int offset, unsigned int length),
343
344 TP_ARGS(page, offset, length)
345)
346
3bc29f0a 347LTTNG_TRACEPOINT_EVENT(ext4_discard_blocks,
b87700e3
AG
348 TP_PROTO(struct super_block *sb, unsigned long long blk,
349 unsigned long long count),
350
351 TP_ARGS(sb, blk, count),
352
f127e61e
MD
353 TP_FIELDS(
354 ctf_integer(dev_t, dev, sb->s_dev)
355 ctf_integer(__u64, blk, blk)
356 ctf_integer(__u64, count, count)
357 )
b87700e3
AG
358)
359
3bc29f0a 360LTTNG_TRACEPOINT_EVENT_CLASS(ext4__mb_new_pa,
b87700e3
AG
361 TP_PROTO(struct ext4_allocation_context *ac,
362 struct ext4_prealloc_space *pa),
363
364 TP_ARGS(ac, pa),
365
f127e61e
MD
366 TP_FIELDS(
367 ctf_integer(dev_t, dev, ac->ac_sb->s_dev)
368 ctf_integer(ino_t, ino, ac->ac_inode->i_ino)
369 ctf_integer(__u64, pa_pstart, pa->pa_pstart)
370 ctf_integer(__u64, pa_lstart, pa->pa_lstart)
371 ctf_integer(__u32, pa_len, pa->pa_len)
372 )
b87700e3
AG
373)
374
3bc29f0a 375LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mb_new_pa, ext4_mb_new_inode_pa,
b87700e3
AG
376
377 TP_PROTO(struct ext4_allocation_context *ac,
378 struct ext4_prealloc_space *pa),
379
380 TP_ARGS(ac, pa)
381)
382
3bc29f0a 383LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mb_new_pa, ext4_mb_new_group_pa,
b87700e3
AG
384
385 TP_PROTO(struct ext4_allocation_context *ac,
386 struct ext4_prealloc_space *pa),
387
388 TP_ARGS(ac, pa)
389)
390
3bc29f0a 391LTTNG_TRACEPOINT_EVENT(ext4_mb_release_inode_pa,
b87700e3 392 TP_PROTO(
b87700e3
AG
393 struct ext4_prealloc_space *pa,
394 unsigned long long block, unsigned int count),
395
b87700e3 396 TP_ARGS(pa, block, count),
b87700e3 397
f127e61e 398 TP_FIELDS(
f127e61e
MD
399 ctf_integer(dev_t, dev, pa->pa_inode->i_sb->s_dev)
400 ctf_integer(ino_t, ino, pa->pa_inode->i_ino)
f127e61e
MD
401 ctf_integer(__u64, block, block)
402 ctf_integer(__u32, count, count)
403 )
b87700e3
AG
404)
405
3bc29f0a 406LTTNG_TRACEPOINT_EVENT(ext4_mb_release_group_pa,
b87700e3 407
b87700e3
AG
408 TP_PROTO(struct super_block *sb, struct ext4_prealloc_space *pa),
409
410 TP_ARGS(sb, pa),
b87700e3 411
aa71c949
MJ
412 TP_FIELDS(
413 ctf_integer(dev_t, dev, sb->s_dev)
414 ctf_integer(__u64, pa_pstart, pa->pa_pstart)
415 ctf_integer(__u32, pa_len, pa->pa_len)
416 )
417)
b87700e3 418
2da4de37
KS
419#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,8,0))
420LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations,
421 TP_PROTO(struct inode *inode, unsigned int len),
422
423 TP_ARGS(inode, len),
424
425 TP_FIELDS(
426 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
427 ctf_integer(ino_t, ino, inode->i_ino)
428 ctf_integer(unsigned int, len, len)
429 )
430)
431#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0) || \
b6af46d1 432 LTTNG_KERNEL_RANGE(5,8,6, 5,9,0))
347a7ba0
MJ
433LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations,
434 TP_PROTO(struct inode *inode, unsigned int len, unsigned int needed),
435
436 TP_ARGS(inode, len, needed),
437
438 TP_FIELDS(
439 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
440 ctf_integer(ino_t, ino, inode->i_ino)
441 ctf_integer(unsigned int, len, len)
442 ctf_integer(unsigned int, needed, needed)
443 )
444)
445#else
3bc29f0a 446LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations,
b87700e3
AG
447 TP_PROTO(struct inode *inode),
448
449 TP_ARGS(inode),
450
f127e61e
MD
451 TP_FIELDS(
452 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
453 ctf_integer(ino_t, ino, inode->i_ino)
454 )
b87700e3 455)
347a7ba0 456#endif
b87700e3 457
3bc29f0a 458LTTNG_TRACEPOINT_EVENT(ext4_mb_discard_preallocations,
b87700e3
AG
459 TP_PROTO(struct super_block *sb, int needed),
460
461 TP_ARGS(sb, needed),
462
f127e61e
MD
463 TP_FIELDS(
464 ctf_integer(dev_t, dev, sb->s_dev)
465 ctf_integer(int, needed, needed)
466 )
b87700e3
AG
467)
468
3bc29f0a 469LTTNG_TRACEPOINT_EVENT(ext4_request_blocks,
b87700e3
AG
470 TP_PROTO(struct ext4_allocation_request *ar),
471
472 TP_ARGS(ar),
473
f127e61e
MD
474 TP_FIELDS(
475 ctf_integer(dev_t, dev, ar->inode->i_sb->s_dev)
476 ctf_integer(ino_t, ino, ar->inode->i_ino)
477 ctf_integer(unsigned int, len, ar->len)
478 ctf_integer(__u32, logical, ar->logical)
479 ctf_integer(__u32, lleft, ar->lleft)
480 ctf_integer(__u32, lright, ar->lright)
481 ctf_integer(__u64, goal, ar->goal)
482 ctf_integer(__u64, pleft, ar->pleft)
483 ctf_integer(__u64, pright, ar->pright)
484 ctf_integer(unsigned int, flags, ar->flags)
485 )
b87700e3
AG
486)
487
3bc29f0a 488LTTNG_TRACEPOINT_EVENT(ext4_allocate_blocks,
b87700e3
AG
489 TP_PROTO(struct ext4_allocation_request *ar, unsigned long long block),
490
491 TP_ARGS(ar, block),
492
f127e61e
MD
493 TP_FIELDS(
494 ctf_integer(dev_t, dev, ar->inode->i_sb->s_dev)
495 ctf_integer(ino_t, ino, ar->inode->i_ino)
496 ctf_integer(__u64, block, block)
497 ctf_integer(unsigned int, len, ar->len)
498 ctf_integer(__u32, logical, ar->logical)
499 ctf_integer(__u32, lleft, ar->lleft)
500 ctf_integer(__u32, lright, ar->lright)
501 ctf_integer(__u64, goal, ar->goal)
502 ctf_integer(__u64, pleft, ar->pleft)
503 ctf_integer(__u64, pright, ar->pright)
504 ctf_integer(unsigned int, flags, ar->flags)
505 )
b87700e3
AG
506)
507
3bc29f0a 508LTTNG_TRACEPOINT_EVENT(ext4_free_blocks,
b87700e3
AG
509 TP_PROTO(struct inode *inode, __u64 block, unsigned long count,
510 int flags),
511
512 TP_ARGS(inode, block, count, flags),
b87700e3 513
f127e61e
MD
514 TP_FIELDS(
515 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
516 ctf_integer(ino_t, ino, inode->i_ino)
517 ctf_integer(__u64, block, block)
518 ctf_integer(unsigned long, count, count)
f127e61e
MD
519 ctf_integer(int, flags, flags)
520 ctf_integer(TP_MODE_T, mode, inode->i_mode)
f127e61e 521 )
b87700e3
AG
522)
523
3bc29f0a 524LTTNG_TRACEPOINT_EVENT(ext4_sync_file_enter,
b87700e3
AG
525 TP_PROTO(struct file *file, int datasync),
526
527 TP_ARGS(file, datasync),
b87700e3 528
f127e61e 529 TP_FIELDS(
f127e61e
MD
530 ctf_integer(dev_t, dev, file->f_path.dentry->d_inode->i_sb->s_dev)
531 ctf_integer(ino_t, ino, file->f_path.dentry->d_inode->i_ino)
532 ctf_integer(ino_t, parent, file->f_path.dentry->d_parent->d_inode->i_ino)
f127e61e
MD
533 ctf_integer(int, datasync, datasync)
534 )
b87700e3
AG
535)
536
3bc29f0a 537LTTNG_TRACEPOINT_EVENT(ext4_sync_file_exit,
b87700e3
AG
538 TP_PROTO(struct inode *inode, int ret),
539
540 TP_ARGS(inode, ret),
541
f127e61e
MD
542 TP_FIELDS(
543 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
544 ctf_integer(ino_t, ino, inode->i_ino)
545 ctf_integer(int, ret, ret)
546 )
b87700e3 547)
b87700e3 548
3bc29f0a 549LTTNG_TRACEPOINT_EVENT(ext4_sync_fs,
b87700e3
AG
550 TP_PROTO(struct super_block *sb, int wait),
551
552 TP_ARGS(sb, wait),
553
f127e61e
MD
554 TP_FIELDS(
555 ctf_integer(dev_t, dev, sb->s_dev)
556 ctf_integer(int, wait, wait)
b87700e3 557
f127e61e 558 )
b87700e3
AG
559)
560
5f4c791e 561#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0))
cf101116
MJ
562LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks,
563 TP_PROTO(struct inode *inode),
564
565 TP_ARGS(inode),
566
567 TP_FIELDS(
568 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
569 ctf_integer(ino_t, ino, inode->i_ino)
570 ctf_integer(unsigned int, data_blocks, EXT4_I(inode)->i_reserved_data_blocks)
571 )
572)
573#else
3bc29f0a 574LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks,
b87700e3
AG
575 TP_PROTO(struct inode *inode),
576
577 TP_ARGS(inode),
578
f127e61e
MD
579 TP_FIELDS(
580 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
581 ctf_integer(ino_t, ino, inode->i_ino)
582 ctf_integer(unsigned int, data_blocks, EXT4_I(inode)->i_reserved_data_blocks)
583 ctf_integer(unsigned int, meta_blocks, EXT4_I(inode)->i_reserved_meta_blocks)
584 )
b87700e3 585)
cf101116 586#endif
b87700e3 587
3bc29f0a 588LTTNG_TRACEPOINT_EVENT(ext4_mballoc_alloc,
b87700e3
AG
589 TP_PROTO(struct ext4_allocation_context *ac),
590
591 TP_ARGS(ac),
592
f127e61e
MD
593 TP_FIELDS(
594 ctf_integer(dev_t, dev, ac->ac_inode->i_sb->s_dev)
595 ctf_integer(ino_t, ino, ac->ac_inode->i_ino)
596 ctf_integer(__u32, orig_logical, ac->ac_o_ex.fe_logical)
597 ctf_integer(int, orig_start, ac->ac_o_ex.fe_start)
598 ctf_integer(__u32, orig_group, ac->ac_o_ex.fe_group)
599 ctf_integer(int, orig_len, ac->ac_o_ex.fe_len)
600 ctf_integer(__u32, goal_logical, ac->ac_g_ex.fe_logical)
601 ctf_integer(int, goal_start, ac->ac_g_ex.fe_start)
602 ctf_integer(__u32, goal_group, ac->ac_g_ex.fe_group)
603 ctf_integer(int, goal_len, ac->ac_g_ex.fe_len)
604 ctf_integer(__u32, result_logical, ac->ac_f_ex.fe_logical)
605 ctf_integer(int, result_start, ac->ac_f_ex.fe_start)
606 ctf_integer(__u32, result_group, ac->ac_f_ex.fe_group)
607 ctf_integer(int, result_len, ac->ac_f_ex.fe_len)
608 ctf_integer(__u16, found, ac->ac_found)
609 ctf_integer(__u16, groups, ac->ac_groups_scanned)
610 ctf_integer(__u16, buddy, ac->ac_buddy)
611 ctf_integer(__u16, flags, ac->ac_flags)
612 ctf_integer(__u16, tail, ac->ac_tail)
613 ctf_integer(__u8, cr, ac->ac_criteria)
614 )
b87700e3
AG
615)
616
3bc29f0a 617LTTNG_TRACEPOINT_EVENT(ext4_mballoc_prealloc,
b87700e3
AG
618 TP_PROTO(struct ext4_allocation_context *ac),
619
620 TP_ARGS(ac),
621
f127e61e
MD
622 TP_FIELDS(
623 ctf_integer(dev_t, dev, ac->ac_inode->i_sb->s_dev)
624 ctf_integer(ino_t, ino, ac->ac_inode->i_ino)
625 ctf_integer(__u32, orig_logical, ac->ac_o_ex.fe_logical)
626 ctf_integer(int, orig_start, ac->ac_o_ex.fe_start)
627 ctf_integer(__u32, orig_group, ac->ac_o_ex.fe_group)
628 ctf_integer(int, orig_len, ac->ac_o_ex.fe_len)
629 ctf_integer(__u32, result_logical, ac->ac_b_ex.fe_logical)
630 ctf_integer(int, result_start, ac->ac_b_ex.fe_start)
631 ctf_integer(__u32, result_group, ac->ac_b_ex.fe_group)
632 ctf_integer(int, result_len, ac->ac_b_ex.fe_len)
633 )
b87700e3
AG
634)
635
3bc29f0a 636LTTNG_TRACEPOINT_EVENT_CLASS(ext4__mballoc,
b87700e3
AG
637 TP_PROTO(struct super_block *sb,
638 struct inode *inode,
639 ext4_group_t group,
640 ext4_grpblk_t start,
641 ext4_grpblk_t len),
642
643 TP_ARGS(sb, inode, group, start, len),
b87700e3 644
f127e61e 645 TP_FIELDS(
f127e61e
MD
646 ctf_integer(dev_t, dev, sb->s_dev)
647 ctf_integer(ino_t, ino, inode ? inode->i_ino : 0)
648 ctf_integer(int, result_start, start)
649 ctf_integer(__u32, result_group, group)
650 ctf_integer(int, result_len, len)
b87700e3
AG
651 )
652)
653
3bc29f0a 654LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mballoc, ext4_mballoc_discard,
b87700e3 655
b87700e3
AG
656 TP_PROTO(struct super_block *sb,
657 struct inode *inode,
658 ext4_group_t group,
659 ext4_grpblk_t start,
660 ext4_grpblk_t len),
661
662 TP_ARGS(sb, inode, group, start, len)
b87700e3
AG
663)
664
3bc29f0a 665LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mballoc, ext4_mballoc_free,
b87700e3 666
b87700e3
AG
667 TP_PROTO(struct super_block *sb,
668 struct inode *inode,
669 ext4_group_t group,
670 ext4_grpblk_t start,
671 ext4_grpblk_t len),
672
673 TP_ARGS(sb, inode, group, start, len)
b87700e3
AG
674)
675
3bc29f0a 676LTTNG_TRACEPOINT_EVENT(ext4_forget,
b87700e3
AG
677 TP_PROTO(struct inode *inode, int is_metadata, __u64 block),
678
679 TP_ARGS(inode, is_metadata, block),
680
f127e61e
MD
681 TP_FIELDS(
682 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
683 ctf_integer(ino_t, ino, inode->i_ino)
684 ctf_integer(__u64, block, block)
685 ctf_integer(int, is_metadata, is_metadata)
686 ctf_integer(TP_MODE_T, mode, inode->i_mode)
687 )
b87700e3 688)
b87700e3 689
5f4c791e 690#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0))
3bc29f0a 691LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space,
b87700e3
AG
692 TP_PROTO(struct inode *inode, int used_blocks, int quota_claim),
693
694 TP_ARGS(inode, used_blocks, quota_claim),
cf101116
MJ
695
696 TP_FIELDS(
697 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
698 ctf_integer(ino_t, ino, inode->i_ino)
699 ctf_integer(__u64, i_blocks, inode->i_blocks)
700 ctf_integer(int, used_blocks, used_blocks)
701 ctf_integer(int, reserved_data_blocks,
702 EXT4_I(inode)->i_reserved_data_blocks)
703 ctf_integer(int, quota_claim, quota_claim)
704 ctf_integer(TP_MODE_T, mode, inode->i_mode)
705 )
706)
09b8e4f6 707#else
cf101116
MJ
708LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space,
709 TP_PROTO(struct inode *inode, int used_blocks, int quota_claim),
710
711 TP_ARGS(inode, used_blocks, quota_claim),
712
713 TP_FIELDS(
714 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
715 ctf_integer(ino_t, ino, inode->i_ino)
716 ctf_integer(__u64, i_blocks, inode->i_blocks)
717 ctf_integer(int, used_blocks, used_blocks)
718 ctf_integer(int, reserved_data_blocks,
719 EXT4_I(inode)->i_reserved_data_blocks)
720 ctf_integer(int, reserved_meta_blocks,
721 EXT4_I(inode)->i_reserved_meta_blocks)
722 ctf_integer(int, allocated_meta_blocks,
723 EXT4_I(inode)->i_allocated_meta_blocks)
724 ctf_integer(int, quota_claim, quota_claim)
725 ctf_integer(TP_MODE_T, mode, inode->i_mode)
726 )
727)
cf101116 728#endif
b87700e3 729
5f4c791e 730#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0))
cf101116
MJ
731LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space,
732 TP_PROTO(struct inode *inode),
733
734 TP_ARGS(inode),
735
736 TP_FIELDS(
737 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
738 ctf_integer(ino_t, ino, inode->i_ino)
739 ctf_integer(__u64, i_blocks, inode->i_blocks)
740 ctf_integer(int, reserved_data_blocks,
741 EXT4_I(inode)->i_reserved_data_blocks)
742 ctf_integer(TP_MODE_T, mode, inode->i_mode)
743 )
744)
09b8e4f6 745#else
5780f1e8
MD
746LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space,
747 TP_PROTO(struct inode *inode),
748
749 TP_ARGS(inode),
750
751 TP_FIELDS(
752 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
753 ctf_integer(ino_t, ino, inode->i_ino)
754 ctf_integer(__u64, i_blocks, inode->i_blocks)
755 ctf_integer(int, reserved_data_blocks,
756 EXT4_I(inode)->i_reserved_data_blocks)
757 ctf_integer(int, reserved_meta_blocks,
758 EXT4_I(inode)->i_reserved_meta_blocks)
759 ctf_integer(TP_MODE_T, mode, inode->i_mode)
760 )
761)
cf101116
MJ
762#endif
763
5f4c791e 764#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0))
cf101116
MJ
765LTTNG_TRACEPOINT_EVENT(ext4_da_release_space,
766 TP_PROTO(struct inode *inode, int freed_blocks),
767
768 TP_ARGS(inode, freed_blocks),
b87700e3 769
cf101116
MJ
770 TP_FIELDS(
771 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
772 ctf_integer(ino_t, ino, inode->i_ino)
773 ctf_integer(__u64, i_blocks, inode->i_blocks)
774 ctf_integer(int, freed_blocks, freed_blocks)
775 ctf_integer(int, reserved_data_blocks,
776 EXT4_I(inode)->i_reserved_data_blocks)
777 ctf_integer(TP_MODE_T, mode, inode->i_mode)
778 )
779)
aa71c949 780#else
3bc29f0a 781LTTNG_TRACEPOINT_EVENT(ext4_da_release_space,
b87700e3
AG
782 TP_PROTO(struct inode *inode, int freed_blocks),
783
784 TP_ARGS(inode, freed_blocks),
785
f127e61e
MD
786 TP_FIELDS(
787 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
788 ctf_integer(ino_t, ino, inode->i_ino)
789 ctf_integer(__u64, i_blocks, inode->i_blocks)
790 ctf_integer(int, freed_blocks, freed_blocks)
791 ctf_integer(int, reserved_data_blocks,
b87700e3 792 EXT4_I(inode)->i_reserved_data_blocks)
f127e61e 793 ctf_integer(int, reserved_meta_blocks,
b87700e3 794 EXT4_I(inode)->i_reserved_meta_blocks)
f127e61e 795 ctf_integer(int, allocated_meta_blocks,
b87700e3 796 EXT4_I(inode)->i_allocated_meta_blocks)
f127e61e
MD
797 ctf_integer(TP_MODE_T, mode, inode->i_mode)
798 )
b87700e3
AG
799)
800#endif
801
3bc29f0a 802LTTNG_TRACEPOINT_EVENT_CLASS(ext4__bitmap_load,
b87700e3
AG
803 TP_PROTO(struct super_block *sb, unsigned long group),
804
805 TP_ARGS(sb, group),
806
f127e61e
MD
807 TP_FIELDS(
808 ctf_integer(dev_t, dev, sb->s_dev)
809 ctf_integer(__u32, group, group)
810 )
b87700e3
AG
811)
812
3bc29f0a 813LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_mb_bitmap_load,
b87700e3
AG
814
815 TP_PROTO(struct super_block *sb, unsigned long group),
816
817 TP_ARGS(sb, group)
818)
819
3bc29f0a 820LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_mb_buddy_bitmap_load,
b87700e3
AG
821
822 TP_PROTO(struct super_block *sb, unsigned long group),
823
824 TP_ARGS(sb, group)
825)
b87700e3 826
5f4c791e 827#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0))
20e546d0
MJ
828LTTNG_TRACEPOINT_EVENT(ext4_read_block_bitmap_load,
829 TP_PROTO(struct super_block *sb, unsigned long group, bool prefetch),
830
831 TP_ARGS(sb, group, prefetch),
832
833 TP_FIELDS(
834 ctf_integer(dev_t, dev, sb->s_dev)
835 ctf_integer(__u32, group, group)
836 ctf_integer(bool, prefetch, prefetch)
837 )
838)
839#else
3bc29f0a 840LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_read_block_bitmap_load,
b87700e3
AG
841
842 TP_PROTO(struct super_block *sb, unsigned long group),
843
844 TP_ARGS(sb, group)
845)
20e546d0 846#endif
b87700e3 847
3bc29f0a 848LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_load_inode_bitmap,
b87700e3
AG
849
850 TP_PROTO(struct super_block *sb, unsigned long group),
851
852 TP_ARGS(sb, group)
853)
854
3bc29f0a 855LTTNG_TRACEPOINT_EVENT(ext4_direct_IO_enter,
b87700e3
AG
856 TP_PROTO(struct inode *inode, loff_t offset, unsigned long len, int rw),
857
858 TP_ARGS(inode, offset, len, rw),
859
f127e61e
MD
860 TP_FIELDS(
861 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
862 ctf_integer(ino_t, ino, inode->i_ino)
863 ctf_integer(loff_t, pos, offset)
864 ctf_integer(unsigned long, len, len)
865 ctf_integer(int, rw, rw)
866 )
b87700e3
AG
867)
868
3bc29f0a 869LTTNG_TRACEPOINT_EVENT(ext4_direct_IO_exit,
b87700e3
AG
870 TP_PROTO(struct inode *inode, loff_t offset, unsigned long len,
871 int rw, int ret),
872
873 TP_ARGS(inode, offset, len, rw, ret),
874
f127e61e
MD
875 TP_FIELDS(
876 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
877 ctf_integer(ino_t, ino, inode->i_ino)
878 ctf_integer(loff_t, pos, offset)
879 ctf_integer(unsigned long, len, len)
880 ctf_integer(int, rw, rw)
881 ctf_integer(int, ret, ret)
882 )
b87700e3
AG
883)
884
3bc29f0a 885LTTNG_TRACEPOINT_EVENT(ext4_fallocate_exit,
11af8f55
MD
886 TP_PROTO(struct inode *inode, loff_t offset,
887 unsigned int max_blocks, int ret),
888
889 TP_ARGS(inode, offset, max_blocks, ret),
890
f127e61e
MD
891 TP_FIELDS(
892 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
893 ctf_integer(ino_t, ino, inode->i_ino)
894 ctf_integer(loff_t, pos, offset)
895 ctf_integer(unsigned int, blocks, max_blocks)
896 ctf_integer(int, ret, ret)
897 )
11af8f55
MD
898)
899
3bc29f0a 900LTTNG_TRACEPOINT_EVENT_CLASS(ext4__fallocate_mode,
b87700e3
AG
901 TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode),
902
903 TP_ARGS(inode, offset, len, mode),
904
f127e61e
MD
905 TP_FIELDS(
906 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
907 ctf_integer(ino_t, ino, inode->i_ino)
908 ctf_integer(loff_t, pos, offset)
909 ctf_integer(loff_t, len, len)
910 ctf_integer(int, mode, mode)
911 )
b87700e3
AG
912)
913
3bc29f0a 914LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode, ext4_fallocate_enter,
b87700e3 915
11af8f55
MD
916 TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode),
917
918 TP_ARGS(inode, offset, len, mode)
919)
920
3bc29f0a 921LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode, ext4_punch_hole,
11af8f55
MD
922
923 TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode),
924
925 TP_ARGS(inode, offset, len, mode)
926)
927
3bc29f0a 928LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode, ext4_zero_range,
11af8f55
MD
929
930 TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode),
931
932 TP_ARGS(inode, offset, len, mode)
933)
934
3bc29f0a 935LTTNG_TRACEPOINT_EVENT(ext4_unlink_enter,
b87700e3
AG
936 TP_PROTO(struct inode *parent, struct dentry *dentry),
937
938 TP_ARGS(parent, dentry),
939
f127e61e
MD
940 TP_FIELDS(
941 ctf_integer(dev_t, dev, dentry->d_inode->i_sb->s_dev)
942 ctf_integer(ino_t, ino, dentry->d_inode->i_ino)
943 ctf_integer(ino_t, parent, parent->i_ino)
944 ctf_integer(loff_t, size, dentry->d_inode->i_size)
945 )
b87700e3
AG
946)
947
3bc29f0a 948LTTNG_TRACEPOINT_EVENT(ext4_unlink_exit,
b87700e3
AG
949 TP_PROTO(struct dentry *dentry, int ret),
950
951 TP_ARGS(dentry, ret),
952
f127e61e
MD
953 TP_FIELDS(
954 ctf_integer(dev_t, dev, dentry->d_inode->i_sb->s_dev)
955 ctf_integer(ino_t, ino, dentry->d_inode->i_ino)
956 ctf_integer(int, ret, ret)
957 )
b87700e3
AG
958)
959
3bc29f0a 960LTTNG_TRACEPOINT_EVENT_CLASS(ext4__truncate,
b87700e3
AG
961 TP_PROTO(struct inode *inode),
962
963 TP_ARGS(inode),
964
f127e61e
MD
965 TP_FIELDS(
966 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
967 ctf_integer(ino_t, ino, inode->i_ino)
968 ctf_integer(unsigned int, blocks, inode->i_blocks)
969 )
b87700e3
AG
970)
971
3bc29f0a 972LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__truncate, ext4_truncate_enter,
b87700e3
AG
973
974 TP_PROTO(struct inode *inode),
975
976 TP_ARGS(inode)
977)
978
3bc29f0a 979LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__truncate, ext4_truncate_exit,
b87700e3
AG
980
981 TP_PROTO(struct inode *inode),
982
983 TP_ARGS(inode)
984)
985
b87700e3 986/* 'ux' is the uninitialized extent. */
3bc29f0a 987LTTNG_TRACEPOINT_EVENT(ext4_ext_convert_to_initialized_enter,
b87700e3
AG
988 TP_PROTO(struct inode *inode, struct ext4_map_blocks *map,
989 struct ext4_extent *ux),
990
991 TP_ARGS(inode, map, ux),
992
f127e61e
MD
993 TP_FIELDS(
994 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
995 ctf_integer(ino_t, ino, inode->i_ino)
996 ctf_integer(ext4_lblk_t, m_lblk, map->m_lblk)
997 ctf_integer(unsigned, m_len, map->m_len)
998 ctf_integer(ext4_lblk_t, u_lblk, le32_to_cpu(ux->ee_block))
999 ctf_integer(unsigned, u_len, ext4_ext_get_actual_len(ux))
1000 ctf_integer(ext4_fsblk_t, u_pblk, ext4_ext_pblock(ux))
1001 )
b87700e3
AG
1002)
1003
1004/*
1005 * 'ux' is the uninitialized extent.
1006 * 'ix' is the initialized extent to which blocks are transferred.
1007 */
3bc29f0a 1008LTTNG_TRACEPOINT_EVENT(ext4_ext_convert_to_initialized_fastpath,
b87700e3
AG
1009 TP_PROTO(struct inode *inode, struct ext4_map_blocks *map,
1010 struct ext4_extent *ux, struct ext4_extent *ix),
1011
1012 TP_ARGS(inode, map, ux, ix),
1013
f127e61e
MD
1014 TP_FIELDS(
1015 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1016 ctf_integer(ino_t, ino, inode->i_ino)
1017 ctf_integer(ext4_lblk_t, m_lblk, map->m_lblk)
1018 ctf_integer(unsigned, m_len, map->m_len)
1019 ctf_integer(ext4_lblk_t, u_lblk, le32_to_cpu(ux->ee_block))
1020 ctf_integer(unsigned, u_len, ext4_ext_get_actual_len(ux))
1021 ctf_integer(ext4_fsblk_t, u_pblk, ext4_ext_pblock(ux))
1022 ctf_integer(ext4_lblk_t, i_lblk, le32_to_cpu(ix->ee_block))
1023 ctf_integer(unsigned, i_len, ext4_ext_get_actual_len(ix))
1024 ctf_integer(ext4_fsblk_t, i_pblk, ext4_ext_pblock(ix))
1025 )
b87700e3 1026)
b87700e3 1027
3bc29f0a 1028LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_enter,
b87700e3
AG
1029 TP_PROTO(struct inode *inode, ext4_lblk_t lblk,
1030 unsigned int len, unsigned int flags),
1031
1032 TP_ARGS(inode, lblk, len, flags),
1033
f127e61e
MD
1034 TP_FIELDS(
1035 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1036 ctf_integer(ino_t, ino, inode->i_ino)
1037 ctf_integer(ext4_lblk_t, lblk, lblk)
1038 ctf_integer(unsigned int, len, len)
1039 ctf_integer(unsigned int, flags, flags)
1040 )
b87700e3
AG
1041)
1042
3bc29f0a 1043LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_enter, ext4_ext_map_blocks_enter,
b87700e3
AG
1044 TP_PROTO(struct inode *inode, ext4_lblk_t lblk,
1045 unsigned len, unsigned flags),
1046
1047 TP_ARGS(inode, lblk, len, flags)
1048)
1049
3bc29f0a 1050LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_enter, ext4_ind_map_blocks_enter,
b87700e3
AG
1051 TP_PROTO(struct inode *inode, ext4_lblk_t lblk,
1052 unsigned len, unsigned flags),
1053
1054 TP_ARGS(inode, lblk, len, flags)
1055)
1056
3bc29f0a 1057LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit,
00be8842
MD
1058 TP_PROTO(struct inode *inode, unsigned flags, struct ext4_map_blocks *map,
1059 int ret),
1060
1061 TP_ARGS(inode, flags, map, ret),
1062
f127e61e
MD
1063 TP_FIELDS(
1064 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1065 ctf_integer(ino_t, ino, inode->i_ino)
1066 ctf_integer(unsigned int, flags, flags)
1067 ctf_integer(ext4_fsblk_t, pblk, map->m_pblk)
1068 ctf_integer(ext4_lblk_t, lblk, map->m_lblk)
1069 ctf_integer(unsigned int, len, map->m_len)
1070 ctf_integer(unsigned int, mflags, map->m_flags)
1071 ctf_integer(int, ret, ret)
1072 )
00be8842
MD
1073)
1074
3bc29f0a 1075LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ext_map_blocks_exit,
00be8842
MD
1076 TP_PROTO(struct inode *inode, unsigned flags,
1077 struct ext4_map_blocks *map, int ret),
1078
1079 TP_ARGS(inode, flags, map, ret)
1080)
1081
3bc29f0a 1082LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ind_map_blocks_exit,
00be8842
MD
1083 TP_PROTO(struct inode *inode, unsigned flags,
1084 struct ext4_map_blocks *map, int ret),
1085
1086 TP_ARGS(inode, flags, map, ret)
1087)
1088
3bc29f0a 1089LTTNG_TRACEPOINT_EVENT(ext4_ext_load_extent,
b87700e3
AG
1090 TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk),
1091
1092 TP_ARGS(inode, lblk, pblk),
1093
f127e61e
MD
1094 TP_FIELDS(
1095 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1096 ctf_integer(ino_t, ino, inode->i_ino)
1097 ctf_integer(ext4_fsblk_t, pblk, pblk)
1098 ctf_integer(ext4_lblk_t, lblk, lblk)
1099 )
b87700e3
AG
1100)
1101
5f4c791e 1102#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,10,0))
e68322f3
MJ
1103LTTNG_TRACEPOINT_EVENT(ext4_load_inode,
1104 TP_PROTO(struct super_block *sb, unsigned long ino),
1105
1106 TP_ARGS(sb, ino),
1107
1108 TP_FIELDS(
1109 ctf_integer(dev_t, dev, sb->s_dev)
1110 ctf_integer(ino_t, ino, ino)
1111 )
1112)
1113#else
3bc29f0a 1114LTTNG_TRACEPOINT_EVENT(ext4_load_inode,
b87700e3
AG
1115 TP_PROTO(struct inode *inode),
1116
1117 TP_ARGS(inode),
1118
f127e61e
MD
1119 TP_FIELDS(
1120 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1121 ctf_integer(ino_t, ino, inode->i_ino)
1122 )
b87700e3 1123)
e68322f3 1124#endif
b87700e3 1125
d6560a97
KS
1126#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,5,0) || \
1127 LTTNG_RHEL_KERNEL_RANGE(4,18,0,240,15,1, 4,19,0,0,0,0))
bb0eb66d
MJ
1128
1129LTTNG_TRACEPOINT_EVENT(ext4_journal_start,
1130 TP_PROTO(struct super_block *sb, int blocks, int rsv_blocks,
1131 int revoke_creds, unsigned long IP),
1132
1133 TP_ARGS(sb, blocks, rsv_blocks, revoke_creds, IP),
1134
1135 TP_FIELDS(
1136 ctf_integer(dev_t, dev, sb->s_dev)
2c054599 1137 ctf_integer_hex(unsigned long, ip, IP)
bb0eb66d
MJ
1138 ctf_integer(int, blocks, blocks)
1139 ctf_integer(int, rsv_blocks, rsv_blocks)
1140 ctf_integer(int, revoke_creds, revoke_creds)
1141 )
1142)
1143
1144LTTNG_TRACEPOINT_EVENT(ext4_journal_start_reserved,
1145 TP_PROTO(struct super_block *sb, int blocks, unsigned long IP),
1146
1147 TP_ARGS(sb, blocks, IP),
1148
1149 TP_FIELDS(
1150 ctf_integer(dev_t, dev, sb->s_dev)
2c054599 1151 ctf_integer_hex(unsigned long, ip, IP)
bb0eb66d
MJ
1152 ctf_integer(int, blocks, blocks)
1153 )
1154)
1155
09b8e4f6 1156#else
00be8842 1157
3bc29f0a 1158LTTNG_TRACEPOINT_EVENT(ext4_journal_start,
00be8842
MD
1159 TP_PROTO(struct super_block *sb, int blocks, int rsv_blocks,
1160 unsigned long IP),
1161
1162 TP_ARGS(sb, blocks, rsv_blocks, IP),
1163
f127e61e
MD
1164 TP_FIELDS(
1165 ctf_integer(dev_t, dev, sb->s_dev)
2c054599 1166 ctf_integer_hex(unsigned long, ip, IP)
f127e61e
MD
1167 ctf_integer(int, blocks, blocks)
1168 ctf_integer(int, rsv_blocks, rsv_blocks)
1169 )
00be8842
MD
1170)
1171
3bc29f0a 1172LTTNG_TRACEPOINT_EVENT(ext4_journal_start_reserved,
00be8842
MD
1173 TP_PROTO(struct super_block *sb, int blocks, unsigned long IP),
1174
1175 TP_ARGS(sb, blocks, IP),
1176
f127e61e
MD
1177 TP_FIELDS(
1178 ctf_integer(dev_t, dev, sb->s_dev)
2c054599 1179 ctf_integer_hex(unsigned long, ip, IP)
f127e61e
MD
1180 ctf_integer(int, blocks, blocks)
1181 )
00be8842 1182)
b87700e3
AG
1183#endif
1184
3bc29f0a 1185LTTNG_TRACEPOINT_EVENT(ext4_ext_handle_uninitialized_extents,
162774b4
MD
1186 TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int flags,
1187 unsigned int allocated, ext4_fsblk_t newblock),
1188
1189 TP_ARGS(inode, map, flags, allocated, newblock),
b87700e3 1190
f127e61e
MD
1191 TP_FIELDS(
1192 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1193 ctf_integer(ino_t, ino, inode->i_ino)
f127e61e 1194 ctf_integer(int, flags, flags)
f127e61e
MD
1195 ctf_integer(ext4_lblk_t, lblk, map->m_lblk)
1196 ctf_integer(ext4_fsblk_t, pblk, map->m_pblk)
1197 ctf_integer(unsigned int, len, map->m_len)
1198 ctf_integer(unsigned int, allocated, allocated)
1199 ctf_integer(ext4_fsblk_t, newblk, newblock)
1200 )
b87700e3
AG
1201)
1202
3bc29f0a 1203LTTNG_TRACEPOINT_EVENT(ext4_get_implied_cluster_alloc_exit,
b87700e3
AG
1204 TP_PROTO(struct super_block *sb, struct ext4_map_blocks *map, int ret),
1205
1206 TP_ARGS(sb, map, ret),
1207
f127e61e
MD
1208 TP_FIELDS(
1209 ctf_integer(dev_t, dev, sb->s_dev)
1210 ctf_integer(unsigned int, flags, map->m_flags)
1211 ctf_integer(ext4_lblk_t, lblk, map->m_lblk)
1212 ctf_integer(ext4_fsblk_t, pblk, map->m_pblk)
1213 ctf_integer(unsigned int, len, map->m_len)
1214 ctf_integer(int, ret, ret)
1215 )
b87700e3
AG
1216)
1217
3bc29f0a 1218LTTNG_TRACEPOINT_EVENT(ext4_ext_put_in_cache,
b87700e3
AG
1219 TP_PROTO(struct inode *inode, ext4_lblk_t lblk, unsigned int len,
1220 ext4_fsblk_t start),
1221
1222 TP_ARGS(inode, lblk, len, start),
1223
f127e61e
MD
1224 TP_FIELDS(
1225 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1226 ctf_integer(ino_t, ino, inode->i_ino)
1227 ctf_integer(ext4_lblk_t, lblk, lblk)
1228 ctf_integer(unsigned int, len, len)
1229 ctf_integer(ext4_fsblk_t, start, start)
1230 )
b87700e3
AG
1231)
1232
3bc29f0a 1233LTTNG_TRACEPOINT_EVENT(ext4_ext_in_cache,
b87700e3
AG
1234 TP_PROTO(struct inode *inode, ext4_lblk_t lblk, int ret),
1235
1236 TP_ARGS(inode, lblk, ret),
1237
f127e61e
MD
1238 TP_FIELDS(
1239 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1240 ctf_integer(ino_t, ino, inode->i_ino)
1241 ctf_integer(ext4_lblk_t, lblk, lblk)
1242 ctf_integer(int, ret, ret)
1243 )
b87700e3
AG
1244)
1245
3bc29f0a 1246LTTNG_TRACEPOINT_EVENT(ext4_find_delalloc_range,
b87700e3
AG
1247 TP_PROTO(struct inode *inode, ext4_lblk_t from, ext4_lblk_t to,
1248 int reverse, int found, ext4_lblk_t found_blk),
1249
1250 TP_ARGS(inode, from, to, reverse, found, found_blk),
1251
f127e61e
MD
1252 TP_FIELDS(
1253 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1254 ctf_integer(ino_t, ino, inode->i_ino)
1255 ctf_integer(ext4_lblk_t, from, from)
1256 ctf_integer(ext4_lblk_t, to, to)
1257 ctf_integer(int, reverse, reverse)
1258 ctf_integer(int, found, found)
1259 ctf_integer(ext4_lblk_t, found_blk, found_blk)
1260 )
b87700e3
AG
1261)
1262
3bc29f0a 1263LTTNG_TRACEPOINT_EVENT(ext4_get_reserved_cluster_alloc,
b87700e3
AG
1264 TP_PROTO(struct inode *inode, ext4_lblk_t lblk, unsigned int len),
1265
1266 TP_ARGS(inode, lblk, len),
1267
f127e61e
MD
1268 TP_FIELDS(
1269 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1270 ctf_integer(ino_t, ino, inode->i_ino)
1271 ctf_integer(ext4_lblk_t, lblk, lblk)
1272 ctf_integer(unsigned int, len, len)
1273 )
b87700e3
AG
1274)
1275
3bc29f0a 1276LTTNG_TRACEPOINT_EVENT(ext4_ext_show_extent,
b87700e3
AG
1277 TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk,
1278 unsigned short len),
1279
1280 TP_ARGS(inode, lblk, pblk, len),
1281
f127e61e
MD
1282 TP_FIELDS(
1283 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1284 ctf_integer(ino_t, ino, inode->i_ino)
1285 ctf_integer(ext4_fsblk_t, pblk, pblk)
1286 ctf_integer(ext4_lblk_t, lblk, lblk)
1287 ctf_integer(unsigned short, len, len)
1288 )
b87700e3
AG
1289)
1290
5f4c791e 1291#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \
3395f24e 1292 LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0))
85957268
MJ
1293
1294LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks,
1295 TP_PROTO(struct inode *inode, struct ext4_extent *ex,
1296 ext4_lblk_t from, ext4_fsblk_t to,
1297 struct partial_cluster *pc),
1298
1299 TP_ARGS(inode, ex, from, to, pc),
1300
1301 TP_FIELDS(
1302 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1303 ctf_integer(ino_t, ino, inode->i_ino)
1304 ctf_integer(ext4_lblk_t, from, from)
1305 ctf_integer(ext4_lblk_t, to, to)
1306 ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex))
1307 ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block))
1308 ctf_integer(unsigned short, ee_len, ext4_ext_get_actual_len(ex))
1309 ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu)
1310 ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk)
1311 ctf_integer(int, pc_state, pc->state)
1312 )
1313)
1314
09b8e4f6 1315#else
00be8842 1316
3bc29f0a 1317LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks,
00be8842
MD
1318 TP_PROTO(struct inode *inode, struct ext4_extent *ex,
1319 ext4_lblk_t from, ext4_fsblk_t to,
1320 long long partial_cluster),
1321
1322 TP_ARGS(inode, ex, from, to, partial_cluster),
1323
f127e61e
MD
1324 TP_FIELDS(
1325 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1326 ctf_integer(ino_t, ino, inode->i_ino)
1327 ctf_integer(ext4_lblk_t, from, from)
1328 ctf_integer(ext4_lblk_t, to, to)
1329 ctf_integer(long long, partial, partial_cluster)
1330 ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex))
1331 ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block))
1332 ctf_integer(unsigned short, ee_len, ext4_ext_get_actual_len(ex))
1333 )
00be8842
MD
1334)
1335
00be8842
MD
1336#endif
1337
5f4c791e 1338#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \
3395f24e 1339 LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0))
85957268
MJ
1340
1341LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf,
1342 TP_PROTO(struct inode *inode, ext4_lblk_t start,
1343 struct ext4_extent *ex,
1344 struct partial_cluster *pc),
1345
1346 TP_ARGS(inode, start, ex, pc),
1347
1348 TP_FIELDS(
1349 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1350 ctf_integer(ino_t, ino, inode->i_ino)
1351 ctf_integer(ext4_lblk_t, start, start)
1352 ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block))
1353 ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex))
1354 ctf_integer(short, ee_len, ext4_ext_get_actual_len(ex))
1355 ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu)
1356 ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk)
1357 ctf_integer(int, pc_state, pc->state)
1358 )
1359)
1360
09b8e4f6 1361#else
00be8842 1362
3bc29f0a 1363LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf,
00be8842
MD
1364 TP_PROTO(struct inode *inode, ext4_lblk_t start,
1365 struct ext4_extent *ex,
1366 long long partial_cluster),
1367
1368 TP_ARGS(inode, start, ex, partial_cluster),
1369
f127e61e
MD
1370 TP_FIELDS(
1371 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1372 ctf_integer(ino_t, ino, inode->i_ino)
1373 ctf_integer(long long, partial, partial_cluster)
1374 ctf_integer(ext4_lblk_t, start, start)
1375 ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block))
1376 ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex))
1377 ctf_integer(short, ee_len, ext4_ext_get_actual_len(ex))
1378 )
00be8842
MD
1379)
1380
00be8842
MD
1381#endif
1382
3bc29f0a 1383LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_idx,
b87700e3
AG
1384 TP_PROTO(struct inode *inode, ext4_fsblk_t pblk),
1385
1386 TP_ARGS(inode, pblk),
1387
f127e61e
MD
1388 TP_FIELDS(
1389 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1390 ctf_integer(ino_t, ino, inode->i_ino)
1391 ctf_integer(ext4_fsblk_t, pblk, pblk)
1392 )
b87700e3
AG
1393)
1394
3bc29f0a 1395LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space,
00be8842
MD
1396 TP_PROTO(struct inode *inode, ext4_lblk_t start,
1397 ext4_lblk_t end, int depth),
1398
1399 TP_ARGS(inode, start, end, depth),
1400
f127e61e
MD
1401 TP_FIELDS(
1402 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1403 ctf_integer(ino_t, ino, inode->i_ino)
1404 ctf_integer(ext4_lblk_t, start, start)
1405 ctf_integer(ext4_lblk_t, end, end)
1406 ctf_integer(int, depth, depth)
1407 )
00be8842
MD
1408)
1409
5f4c791e 1410#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \
3395f24e 1411 LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0))
85957268
MJ
1412
1413LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done,
1414 TP_PROTO(struct inode *inode, ext4_lblk_t start, ext4_lblk_t end,
1415 int depth, struct partial_cluster *pc, __le16 eh_entries),
1416
1417 TP_ARGS(inode, start, end, depth, pc, eh_entries),
1418
1419 TP_FIELDS(
1420 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1421 ctf_integer(ino_t, ino, inode->i_ino)
1422 ctf_integer(ext4_lblk_t, start, start)
1423 ctf_integer(ext4_lblk_t, end, end)
1424 ctf_integer(int, depth, depth)
1425 ctf_integer(unsigned short, eh_entries, le16_to_cpu(eh_entries))
1426 ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu)
1427 ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk)
1428 ctf_integer(int, pc_state, pc->state)
1429 )
1430)
1431
09b8e4f6 1432#else
00be8842 1433
3bc29f0a 1434LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done,
00be8842
MD
1435 TP_PROTO(struct inode *inode, ext4_lblk_t start, ext4_lblk_t end,
1436 int depth, long long partial, __le16 eh_entries),
1437
1438 TP_ARGS(inode, start, end, depth, partial, eh_entries),
1439
f127e61e
MD
1440 TP_FIELDS(
1441 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1442 ctf_integer(ino_t, ino, inode->i_ino)
1443 ctf_integer(ext4_lblk_t, start, start)
1444 ctf_integer(ext4_lblk_t, end, end)
1445 ctf_integer(int, depth, depth)
1446 ctf_integer(long long, partial, partial)
1447 ctf_integer(unsigned short, eh_entries, le16_to_cpu(eh_entries))
1448 )
00be8842
MD
1449)
1450
00be8842
MD
1451#endif
1452
3bc29f0a 1453LTTNG_TRACEPOINT_EVENT_CLASS(ext4__es_extent,
39aee4a0
MD
1454 TP_PROTO(struct inode *inode, struct extent_status *es),
1455
1456 TP_ARGS(inode, es),
1457
f127e61e
MD
1458 TP_FIELDS(
1459 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
1460 ctf_integer(ino_t, ino, inode->i_ino)
1461 ctf_integer(ext4_lblk_t, lblk, es->es_lblk)
1462 ctf_integer(ext4_lblk_t, len, es->es_len)
1463 ctf_integer(ext4_fsblk_t, pblk, ext4_es_pblock(es))
1464 ctf_integer(char, status, ext4_es_status(es))
1465 )
39aee4a0
MD
1466)
1467
3bc29f0a 1468LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__es_extent, ext4_es_insert_extent,
39aee4a0
MD
1469 TP_PROTO(struct inode *inode, struct extent_status *es),
1470
1471 TP_ARGS(inode, es)
1472)
1473
3bc29f0a 1474LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__es_extent, ext4_es_cache_extent,
39aee4a0
MD
1475 TP_PROTO(struct inode *inode, struct extent_status *es),
1476
1477 TP_ARGS(inode, es)
1478)
1479
5f4c791e 1480#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,10,0))
e68322f3
MJ
1481LTTNG_TRACEPOINT_EVENT(ext4_fc_replay_scan,
1482 TP_PROTO(struct super_block *sb, int error, int off),
1483
1484 TP_ARGS(sb, error, off),
1485
1486 TP_FIELDS(
1487 ctf_integer(dev_t, dev, sb->s_dev)
1488 ctf_integer(int, error, error)
1489 ctf_integer(int, off, off)
1490 )
1491)
1492
1493LTTNG_TRACEPOINT_EVENT(ext4_fc_replay,
1494 TP_PROTO(struct super_block *sb, int tag, int ino, int priv1, int priv2),
1495
1496 TP_ARGS(sb, tag, ino, priv1, priv2),
1497
1498 TP_FIELDS(
1499 ctf_integer(dev_t, dev, sb->s_dev)
1500 ctf_integer(int, tag, tag)
1501 ctf_integer(int, ino, ino)
1502 ctf_integer(int, priv1, priv1)
1503 ctf_integer(int, priv2, priv2)
1504 )
1505)
1506#endif
1507
3bc29f0a 1508#endif /* LTTNG_TRACE_EXT4_H */
b87700e3
AG
1509
1510/* This part must be outside protection */
3b4aafcb 1511#include <lttng/define_trace.h>
This page took 0.178889 seconds and 4 git commands to generate.