1 /* SPDX-License-Identifier: GPL-2.0 */
3 #define TRACE_SYSTEM ext4
5 #if !defined(LTTNG_TRACE_EXT4_H) || defined(TRACE_HEADER_MULTI_READ)
6 #define LTTNG_TRACE_EXT4_H
8 #include <probes/lttng-tracepoint-event.h>
9 #include <linux/writeback.h>
10 #include <linux/version.h>
12 #ifndef _TRACE_EXT4_DEF_
13 #define _TRACE_EXT4_DEF_
14 struct ext4_allocation_context
;
15 struct ext4_allocation_request
;
16 struct ext4_prealloc_space
;
17 struct ext4_inode_info
;
19 struct ext4_map_blocks
;
20 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0))
25 #define EXT4_I(inode) (container_of(inode, struct ext4_inode_info, vfs_inode))
26 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0))
27 #define TP_MODE_T __u16
29 #define TP_MODE_T umode_t
32 LTTNG_TRACEPOINT_EVENT(ext4_free_inode
,
33 TP_PROTO(struct inode
*inode
),
38 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
39 ctf_integer(ino_t
, ino
, inode
->i_ino
)
40 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
41 ctf_integer(uid_t
, uid
, i_uid_read(inode
))
42 ctf_integer(gid_t
, gid
, i_gid_read(inode
))
44 ctf_integer(uid_t
, uid
, inode
->i_uid
)
45 ctf_integer(gid_t
, gid
, inode
->i_gid
)
47 ctf_integer(__u64
, blocks
, inode
->i_blocks
)
48 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
52 LTTNG_TRACEPOINT_EVENT(ext4_request_inode
,
53 TP_PROTO(struct inode
*dir
, int mode
),
58 ctf_integer(dev_t
, dev
, dir
->i_sb
->s_dev
)
59 ctf_integer(ino_t
, dir
, dir
->i_ino
)
60 ctf_integer(TP_MODE_T
, mode
, mode
)
64 LTTNG_TRACEPOINT_EVENT(ext4_allocate_inode
,
65 TP_PROTO(struct inode
*inode
, struct inode
*dir
, int mode
),
67 TP_ARGS(inode
, dir
, mode
),
70 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
71 ctf_integer(ino_t
, ino
, inode
->i_ino
)
72 ctf_integer(ino_t
, dir
, dir
->i_ino
)
73 ctf_integer(TP_MODE_T
, mode
, mode
)
77 LTTNG_TRACEPOINT_EVENT(ext4_evict_inode
,
78 TP_PROTO(struct inode
*inode
),
83 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
84 ctf_integer(ino_t
, ino
, inode
->i_ino
)
85 ctf_integer(int, nlink
, inode
->i_nlink
)
89 LTTNG_TRACEPOINT_EVENT(ext4_drop_inode
,
90 TP_PROTO(struct inode
*inode
, int drop
),
95 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
96 ctf_integer(ino_t
, ino
, inode
->i_ino
)
97 ctf_integer(int, drop
, drop
)
101 LTTNG_TRACEPOINT_EVENT(ext4_mark_inode_dirty
,
102 TP_PROTO(struct inode
*inode
, unsigned long IP
),
107 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
108 ctf_integer(ino_t
, ino
, inode
->i_ino
)
109 ctf_integer(unsigned long, ip
, IP
)
113 LTTNG_TRACEPOINT_EVENT(ext4_begin_ordered_truncate
,
114 TP_PROTO(struct inode
*inode
, loff_t new_size
),
116 TP_ARGS(inode
, new_size
),
119 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
120 ctf_integer(ino_t
, ino
, inode
->i_ino
)
121 ctf_integer(loff_t
, new_size
, new_size
)
125 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_begin
,
127 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
130 TP_ARGS(inode
, pos
, len
, flags
),
133 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
134 ctf_integer(ino_t
, ino
, inode
->i_ino
)
135 ctf_integer(loff_t
, pos
, pos
)
136 ctf_integer(unsigned int, len
, len
)
137 ctf_integer(unsigned int, flags
, flags
)
141 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin
, ext4_write_begin
,
143 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
146 TP_ARGS(inode
, pos
, len
, flags
)
149 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin
, ext4_da_write_begin
,
151 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
154 TP_ARGS(inode
, pos
, len
, flags
)
157 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_end
,
158 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
159 unsigned int copied
),
161 TP_ARGS(inode
, pos
, len
, copied
),
164 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
165 ctf_integer(ino_t
, ino
, inode
->i_ino
)
166 ctf_integer(loff_t
, pos
, pos
)
167 ctf_integer(unsigned int, len
, len
)
168 ctf_integer(unsigned int, copied
, copied
)
172 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end
, ext4_ordered_write_end
,
174 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
175 unsigned int copied
),
177 TP_ARGS(inode
, pos
, len
, copied
)
180 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end
, ext4_writeback_write_end
,
182 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
183 unsigned int copied
),
185 TP_ARGS(inode
, pos
, len
, copied
)
188 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end
, ext4_journalled_write_end
,
190 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
191 unsigned int copied
),
193 TP_ARGS(inode
, pos
, len
, copied
)
196 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end
, ext4_da_write_end
,
198 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
199 unsigned int copied
),
201 TP_ARGS(inode
, pos
, len
, copied
)
204 LTTNG_TRACEPOINT_EVENT(ext4_da_writepages
,
205 TP_PROTO(struct inode
*inode
, struct writeback_control
*wbc
),
210 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
211 ctf_integer(ino_t
, ino
, inode
->i_ino
)
212 ctf_integer(long, nr_to_write
, wbc
->nr_to_write
)
213 ctf_integer(long, pages_skipped
, wbc
->pages_skipped
)
214 ctf_integer(loff_t
, range_start
, wbc
->range_start
)
215 ctf_integer(loff_t
, range_end
, wbc
->range_end
)
216 ctf_integer(pgoff_t
, writeback_index
, inode
->i_mapping
->writeback_index
)
217 ctf_integer(int, sync_mode
, wbc
->sync_mode
)
218 ctf_integer(char, for_kupdate
, wbc
->for_kupdate
)
219 ctf_integer(char, range_cyclic
, wbc
->range_cyclic
)
223 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
225 LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages
,
226 TP_PROTO(struct inode
*inode
, pgoff_t first_page
,
227 struct writeback_control
*wbc
),
229 TP_ARGS(inode
, first_page
, wbc
),
232 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
233 ctf_integer(ino_t
, ino
, inode
->i_ino
)
234 ctf_integer(pgoff_t
, first_page
, first_page
)
235 ctf_integer(long, nr_to_write
, wbc
->nr_to_write
)
236 ctf_integer(int, sync_mode
, wbc
->sync_mode
)
242 LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages
,
243 TP_PROTO(struct inode
*inode
, struct mpage_da_data
*mpd
),
248 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
249 ctf_integer(ino_t
, ino
, inode
->i_ino
)
250 ctf_integer(__u64
, b_blocknr
, mpd
->b_blocknr
)
251 ctf_integer(__u32
, b_size
, mpd
->b_size
)
252 ctf_integer(__u32
, b_state
, mpd
->b_state
)
253 ctf_integer(unsigned long, first_page
, mpd
->first_page
)
254 ctf_integer(int, io_done
, mpd
->io_done
)
255 ctf_integer(int, pages_written
, mpd
->pages_written
)
256 ctf_integer(int, sync_mode
, mpd
->wbc
->sync_mode
)
262 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
264 LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages_extent
,
265 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
),
270 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
271 ctf_integer(ino_t
, ino
, inode
->i_ino
)
272 ctf_integer(__u64
, lblk
, map
->m_lblk
)
273 ctf_integer(__u32
, len
, map
->m_len
)
274 ctf_integer(__u32
, flags
, map
->m_flags
)
280 LTTNG_TRACEPOINT_EVENT(ext4_da_writepages_result
,
281 TP_PROTO(struct inode
*inode
, struct writeback_control
*wbc
,
282 int ret
, int pages_written
),
284 TP_ARGS(inode
, wbc
, ret
, pages_written
),
287 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
288 ctf_integer(ino_t
, ino
, inode
->i_ino
)
289 ctf_integer(int, ret
, ret
)
290 ctf_integer(int, pages_written
, pages_written
)
291 ctf_integer(long, pages_skipped
, wbc
->pages_skipped
)
292 ctf_integer(pgoff_t
, writeback_index
, inode
->i_mapping
->writeback_index
)
293 ctf_integer(int, sync_mode
, wbc
->sync_mode
)
297 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__page_op
,
298 TP_PROTO(struct page
*page
),
303 ctf_integer(dev_t
, dev
, page
->mapping
->host
->i_sb
->s_dev
)
304 ctf_integer(ino_t
, ino
, page
->mapping
->host
->i_ino
)
305 ctf_integer(pgoff_t
, index
, page
->index
)
309 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op
, ext4_writepage
,
311 TP_PROTO(struct page
*page
),
316 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op
, ext4_readpage
,
318 TP_PROTO(struct page
*page
),
323 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op
, ext4_releasepage
,
325 TP_PROTO(struct page
*page
),
330 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
332 LTTNG_TRACEPOINT_EVENT_CLASS(ext4_invalidatepage_op
,
333 TP_PROTO(struct page
*page
, unsigned int offset
, unsigned int length
),
335 TP_ARGS(page
, offset
, length
),
338 ctf_integer(dev_t
, dev
, page
->mapping
->host
->i_sb
->s_dev
)
339 ctf_integer(ino_t
, ino
, page
->mapping
->host
->i_ino
)
340 ctf_integer(pgoff_t
, index
, page
->index
)
341 ctf_integer(unsigned int, offset
, offset
)
342 ctf_integer(unsigned int, length
, length
)
346 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4_invalidatepage_op
, ext4_invalidatepage
,
347 TP_PROTO(struct page
*page
, unsigned int offset
, unsigned int length
),
349 TP_ARGS(page
, offset
, length
)
352 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4_invalidatepage_op
, ext4_journalled_invalidatepage
,
353 TP_PROTO(struct page
*page
, unsigned int offset
, unsigned int length
),
355 TP_ARGS(page
, offset
, length
)
360 LTTNG_TRACEPOINT_EVENT(ext4_invalidatepage
,
361 TP_PROTO(struct page
*page
, unsigned long offset
),
363 TP_ARGS(page
, offset
),
366 ctf_integer(dev_t
, dev
, page
->mapping
->host
->i_sb
->s_dev
)
367 ctf_integer(ino_t
, ino
, page
->mapping
->host
->i_ino
)
368 ctf_integer(pgoff_t
, index
, page
->index
)
369 ctf_integer(unsigned long, offset
, offset
)
376 LTTNG_TRACEPOINT_EVENT(ext4_discard_blocks
,
377 TP_PROTO(struct super_block
*sb
, unsigned long long blk
,
378 unsigned long long count
),
380 TP_ARGS(sb
, blk
, count
),
383 ctf_integer(dev_t
, dev
, sb
->s_dev
)
384 ctf_integer(__u64
, blk
, blk
)
385 ctf_integer(__u64
, count
, count
)
389 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__mb_new_pa
,
390 TP_PROTO(struct ext4_allocation_context
*ac
,
391 struct ext4_prealloc_space
*pa
),
396 ctf_integer(dev_t
, dev
, ac
->ac_sb
->s_dev
)
397 ctf_integer(ino_t
, ino
, ac
->ac_inode
->i_ino
)
398 ctf_integer(__u64
, pa_pstart
, pa
->pa_pstart
)
399 ctf_integer(__u64
, pa_lstart
, pa
->pa_lstart
)
400 ctf_integer(__u32
, pa_len
, pa
->pa_len
)
404 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mb_new_pa
, ext4_mb_new_inode_pa
,
406 TP_PROTO(struct ext4_allocation_context
*ac
,
407 struct ext4_prealloc_space
*pa
),
412 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mb_new_pa
, ext4_mb_new_group_pa
,
414 TP_PROTO(struct ext4_allocation_context
*ac
,
415 struct ext4_prealloc_space
*pa
),
420 LTTNG_TRACEPOINT_EVENT(ext4_mb_release_inode_pa
,
422 struct ext4_prealloc_space
*pa
,
423 unsigned long long block
, unsigned int count
),
425 TP_ARGS(pa
, block
, count
),
428 ctf_integer(dev_t
, dev
, pa
->pa_inode
->i_sb
->s_dev
)
429 ctf_integer(ino_t
, ino
, pa
->pa_inode
->i_ino
)
430 ctf_integer(__u64
, block
, block
)
431 ctf_integer(__u32
, count
, count
)
435 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
436 LTTNG_TRACEPOINT_EVENT(ext4_mb_release_group_pa
,
438 TP_PROTO(struct super_block
*sb
, struct ext4_prealloc_space
*pa
),
443 ctf_integer(dev_t
, dev
, sb
->s_dev
)
444 ctf_integer(__u64
, pa_pstart
, pa
->pa_pstart
)
445 ctf_integer(__u32
, pa_len
, pa
->pa_len
)
449 LTTNG_TRACEPOINT_EVENT(ext4_mb_release_group_pa
,
451 TP_PROTO(struct ext4_prealloc_space
*pa
),
456 ctf_integer(dev_t
, dev
, pa
->pa_inode
->i_sb
->s_dev
)
457 ctf_integer(__u64
, pa_pstart
, pa
->pa_pstart
)
458 ctf_integer(__u32
, pa_len
, pa
->pa_len
)
463 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,9,0))
464 LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations
,
465 TP_PROTO(struct inode
*inode
, unsigned int len
, unsigned int needed
),
467 TP_ARGS(inode
, len
, needed
),
470 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
471 ctf_integer(ino_t
, ino
, inode
->i_ino
)
472 ctf_integer(unsigned int, len
, len
)
473 ctf_integer(unsigned int, needed
, needed
)
477 LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations
,
478 TP_PROTO(struct inode
*inode
),
483 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
484 ctf_integer(ino_t
, ino
, inode
->i_ino
)
489 LTTNG_TRACEPOINT_EVENT(ext4_mb_discard_preallocations
,
490 TP_PROTO(struct super_block
*sb
, int needed
),
495 ctf_integer(dev_t
, dev
, sb
->s_dev
)
496 ctf_integer(int, needed
, needed
)
500 LTTNG_TRACEPOINT_EVENT(ext4_request_blocks
,
501 TP_PROTO(struct ext4_allocation_request
*ar
),
506 ctf_integer(dev_t
, dev
, ar
->inode
->i_sb
->s_dev
)
507 ctf_integer(ino_t
, ino
, ar
->inode
->i_ino
)
508 ctf_integer(unsigned int, len
, ar
->len
)
509 ctf_integer(__u32
, logical
, ar
->logical
)
510 ctf_integer(__u32
, lleft
, ar
->lleft
)
511 ctf_integer(__u32
, lright
, ar
->lright
)
512 ctf_integer(__u64
, goal
, ar
->goal
)
513 ctf_integer(__u64
, pleft
, ar
->pleft
)
514 ctf_integer(__u64
, pright
, ar
->pright
)
515 ctf_integer(unsigned int, flags
, ar
->flags
)
519 LTTNG_TRACEPOINT_EVENT(ext4_allocate_blocks
,
520 TP_PROTO(struct ext4_allocation_request
*ar
, unsigned long long block
),
525 ctf_integer(dev_t
, dev
, ar
->inode
->i_sb
->s_dev
)
526 ctf_integer(ino_t
, ino
, ar
->inode
->i_ino
)
527 ctf_integer(__u64
, block
, block
)
528 ctf_integer(unsigned int, len
, ar
->len
)
529 ctf_integer(__u32
, logical
, ar
->logical
)
530 ctf_integer(__u32
, lleft
, ar
->lleft
)
531 ctf_integer(__u32
, lright
, ar
->lright
)
532 ctf_integer(__u64
, goal
, ar
->goal
)
533 ctf_integer(__u64
, pleft
, ar
->pleft
)
534 ctf_integer(__u64
, pright
, ar
->pright
)
535 ctf_integer(unsigned int, flags
, ar
->flags
)
539 LTTNG_TRACEPOINT_EVENT(ext4_free_blocks
,
540 TP_PROTO(struct inode
*inode
, __u64 block
, unsigned long count
,
543 TP_ARGS(inode
, block
, count
, flags
),
546 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
547 ctf_integer(ino_t
, ino
, inode
->i_ino
)
548 ctf_integer(__u64
, block
, block
)
549 ctf_integer(unsigned long, count
, count
)
550 ctf_integer(int, flags
, flags
)
551 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
555 LTTNG_TRACEPOINT_EVENT(ext4_sync_file_enter
,
556 TP_PROTO(struct file
*file
, int datasync
),
558 TP_ARGS(file
, datasync
),
561 ctf_integer(dev_t
, dev
, file
->f_path
.dentry
->d_inode
->i_sb
->s_dev
)
562 ctf_integer(ino_t
, ino
, file
->f_path
.dentry
->d_inode
->i_ino
)
563 ctf_integer(ino_t
, parent
, file
->f_path
.dentry
->d_parent
->d_inode
->i_ino
)
564 ctf_integer(int, datasync
, datasync
)
568 LTTNG_TRACEPOINT_EVENT(ext4_sync_file_exit
,
569 TP_PROTO(struct inode
*inode
, int ret
),
574 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
575 ctf_integer(ino_t
, ino
, inode
->i_ino
)
576 ctf_integer(int, ret
, ret
)
580 LTTNG_TRACEPOINT_EVENT(ext4_sync_fs
,
581 TP_PROTO(struct super_block
*sb
, int wait
),
586 ctf_integer(dev_t
, dev
, sb
->s_dev
)
587 ctf_integer(int, wait
, wait
)
592 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
593 LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks
,
594 TP_PROTO(struct inode
*inode
),
599 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
600 ctf_integer(ino_t
, ino
, inode
->i_ino
)
601 ctf_integer(unsigned int, data_blocks
, EXT4_I(inode
)->i_reserved_data_blocks
)
605 LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks
,
606 TP_PROTO(struct inode
*inode
),
611 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
612 ctf_integer(ino_t
, ino
, inode
->i_ino
)
613 ctf_integer(unsigned int, data_blocks
, EXT4_I(inode
)->i_reserved_data_blocks
)
614 ctf_integer(unsigned int, meta_blocks
, EXT4_I(inode
)->i_reserved_meta_blocks
)
619 LTTNG_TRACEPOINT_EVENT(ext4_mballoc_alloc
,
620 TP_PROTO(struct ext4_allocation_context
*ac
),
625 ctf_integer(dev_t
, dev
, ac
->ac_inode
->i_sb
->s_dev
)
626 ctf_integer(ino_t
, ino
, ac
->ac_inode
->i_ino
)
627 ctf_integer(__u32
, orig_logical
, ac
->ac_o_ex
.fe_logical
)
628 ctf_integer(int, orig_start
, ac
->ac_o_ex
.fe_start
)
629 ctf_integer(__u32
, orig_group
, ac
->ac_o_ex
.fe_group
)
630 ctf_integer(int, orig_len
, ac
->ac_o_ex
.fe_len
)
631 ctf_integer(__u32
, goal_logical
, ac
->ac_g_ex
.fe_logical
)
632 ctf_integer(int, goal_start
, ac
->ac_g_ex
.fe_start
)
633 ctf_integer(__u32
, goal_group
, ac
->ac_g_ex
.fe_group
)
634 ctf_integer(int, goal_len
, ac
->ac_g_ex
.fe_len
)
635 ctf_integer(__u32
, result_logical
, ac
->ac_f_ex
.fe_logical
)
636 ctf_integer(int, result_start
, ac
->ac_f_ex
.fe_start
)
637 ctf_integer(__u32
, result_group
, ac
->ac_f_ex
.fe_group
)
638 ctf_integer(int, result_len
, ac
->ac_f_ex
.fe_len
)
639 ctf_integer(__u16
, found
, ac
->ac_found
)
640 ctf_integer(__u16
, groups
, ac
->ac_groups_scanned
)
641 ctf_integer(__u16
, buddy
, ac
->ac_buddy
)
642 ctf_integer(__u16
, flags
, ac
->ac_flags
)
643 ctf_integer(__u16
, tail
, ac
->ac_tail
)
644 ctf_integer(__u8
, cr
, ac
->ac_criteria
)
648 LTTNG_TRACEPOINT_EVENT(ext4_mballoc_prealloc
,
649 TP_PROTO(struct ext4_allocation_context
*ac
),
654 ctf_integer(dev_t
, dev
, ac
->ac_inode
->i_sb
->s_dev
)
655 ctf_integer(ino_t
, ino
, ac
->ac_inode
->i_ino
)
656 ctf_integer(__u32
, orig_logical
, ac
->ac_o_ex
.fe_logical
)
657 ctf_integer(int, orig_start
, ac
->ac_o_ex
.fe_start
)
658 ctf_integer(__u32
, orig_group
, ac
->ac_o_ex
.fe_group
)
659 ctf_integer(int, orig_len
, ac
->ac_o_ex
.fe_len
)
660 ctf_integer(__u32
, result_logical
, ac
->ac_b_ex
.fe_logical
)
661 ctf_integer(int, result_start
, ac
->ac_b_ex
.fe_start
)
662 ctf_integer(__u32
, result_group
, ac
->ac_b_ex
.fe_group
)
663 ctf_integer(int, result_len
, ac
->ac_b_ex
.fe_len
)
667 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__mballoc
,
668 TP_PROTO(struct super_block
*sb
,
674 TP_ARGS(sb
, inode
, group
, start
, len
),
677 ctf_integer(dev_t
, dev
, sb
->s_dev
)
678 ctf_integer(ino_t
, ino
, inode
? inode
->i_ino
: 0)
679 ctf_integer(int, result_start
, start
)
680 ctf_integer(__u32
, result_group
, group
)
681 ctf_integer(int, result_len
, len
)
685 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mballoc
, ext4_mballoc_discard
,
687 TP_PROTO(struct super_block
*sb
,
693 TP_ARGS(sb
, inode
, group
, start
, len
)
696 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mballoc
, ext4_mballoc_free
,
698 TP_PROTO(struct super_block
*sb
,
704 TP_ARGS(sb
, inode
, group
, start
, len
)
707 LTTNG_TRACEPOINT_EVENT(ext4_forget
,
708 TP_PROTO(struct inode
*inode
, int is_metadata
, __u64 block
),
710 TP_ARGS(inode
, is_metadata
, block
),
713 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
714 ctf_integer(ino_t
, ino
, inode
->i_ino
)
715 ctf_integer(__u64
, block
, block
)
716 ctf_integer(int, is_metadata
, is_metadata
)
717 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
721 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
722 LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space
,
723 TP_PROTO(struct inode
*inode
, int used_blocks
, int quota_claim
),
725 TP_ARGS(inode
, used_blocks
, quota_claim
),
728 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
729 ctf_integer(ino_t
, ino
, inode
->i_ino
)
730 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
731 ctf_integer(int, used_blocks
, used_blocks
)
732 ctf_integer(int, reserved_data_blocks
,
733 EXT4_I(inode
)->i_reserved_data_blocks
)
734 ctf_integer(int, quota_claim
, quota_claim
)
735 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
738 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0))
739 LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space
,
740 TP_PROTO(struct inode
*inode
, int used_blocks
, int quota_claim
),
742 TP_ARGS(inode
, used_blocks
, quota_claim
),
745 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
746 ctf_integer(ino_t
, ino
, inode
->i_ino
)
747 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
748 ctf_integer(int, used_blocks
, used_blocks
)
749 ctf_integer(int, reserved_data_blocks
,
750 EXT4_I(inode
)->i_reserved_data_blocks
)
751 ctf_integer(int, reserved_meta_blocks
,
752 EXT4_I(inode
)->i_reserved_meta_blocks
)
753 ctf_integer(int, allocated_meta_blocks
,
754 EXT4_I(inode
)->i_allocated_meta_blocks
)
755 ctf_integer(int, quota_claim
, quota_claim
)
756 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
760 LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space
,
761 TP_PROTO(struct inode
*inode
, int used_blocks
),
763 TP_ARGS(inode
, used_blocks
),
766 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
767 ctf_integer(ino_t
, ino
, inode
->i_ino
)
768 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
769 ctf_integer(int, used_blocks
, used_blocks
)
770 ctf_integer(int, reserved_data_blocks
,
771 EXT4_I(inode
)->i_reserved_data_blocks
)
772 ctf_integer(int, reserved_meta_blocks
,
773 EXT4_I(inode
)->i_reserved_meta_blocks
)
774 ctf_integer(int, allocated_meta_blocks
,
775 EXT4_I(inode
)->i_allocated_meta_blocks
)
776 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
781 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
782 LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space
,
783 TP_PROTO(struct inode
*inode
),
788 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
789 ctf_integer(ino_t
, ino
, inode
->i_ino
)
790 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
791 ctf_integer(int, reserved_data_blocks
,
792 EXT4_I(inode
)->i_reserved_data_blocks
)
793 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
796 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0))
797 LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space
,
798 TP_PROTO(struct inode
*inode
),
803 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
804 ctf_integer(ino_t
, ino
, inode
->i_ino
)
805 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
806 ctf_integer(int, reserved_data_blocks
,
807 EXT4_I(inode
)->i_reserved_data_blocks
)
808 ctf_integer(int, reserved_meta_blocks
,
809 EXT4_I(inode
)->i_reserved_meta_blocks
)
810 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
814 LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space
,
815 TP_PROTO(struct inode
*inode
, int md_needed
),
817 TP_ARGS(inode
, md_needed
),
820 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
821 ctf_integer(ino_t
, ino
, inode
->i_ino
)
822 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
823 ctf_integer(int, md_needed
, md_needed
)
824 ctf_integer(int, reserved_data_blocks
,
825 EXT4_I(inode
)->i_reserved_data_blocks
)
826 ctf_integer(int, reserved_meta_blocks
,
827 EXT4_I(inode
)->i_reserved_meta_blocks
)
828 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
833 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0))
834 LTTNG_TRACEPOINT_EVENT(ext4_da_release_space
,
835 TP_PROTO(struct inode
*inode
, int freed_blocks
),
837 TP_ARGS(inode
, freed_blocks
),
840 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
841 ctf_integer(ino_t
, ino
, inode
->i_ino
)
842 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
843 ctf_integer(int, freed_blocks
, freed_blocks
)
844 ctf_integer(int, reserved_data_blocks
,
845 EXT4_I(inode
)->i_reserved_data_blocks
)
846 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
850 LTTNG_TRACEPOINT_EVENT(ext4_da_release_space
,
851 TP_PROTO(struct inode
*inode
, int freed_blocks
),
853 TP_ARGS(inode
, freed_blocks
),
856 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
857 ctf_integer(ino_t
, ino
, inode
->i_ino
)
858 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
859 ctf_integer(int, freed_blocks
, freed_blocks
)
860 ctf_integer(int, reserved_data_blocks
,
861 EXT4_I(inode
)->i_reserved_data_blocks
)
862 ctf_integer(int, reserved_meta_blocks
,
863 EXT4_I(inode
)->i_reserved_meta_blocks
)
864 ctf_integer(int, allocated_meta_blocks
,
865 EXT4_I(inode
)->i_allocated_meta_blocks
)
866 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
871 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__bitmap_load
,
872 TP_PROTO(struct super_block
*sb
, unsigned long group
),
877 ctf_integer(dev_t
, dev
, sb
->s_dev
)
878 ctf_integer(__u32
, group
, group
)
882 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load
, ext4_mb_bitmap_load
,
884 TP_PROTO(struct super_block
*sb
, unsigned long group
),
889 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load
, ext4_mb_buddy_bitmap_load
,
891 TP_PROTO(struct super_block
*sb
, unsigned long group
),
896 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,9,0))
897 LTTNG_TRACEPOINT_EVENT(ext4_read_block_bitmap_load
,
898 TP_PROTO(struct super_block
*sb
, unsigned long group
, bool prefetch
),
900 TP_ARGS(sb
, group
, prefetch
),
903 ctf_integer(dev_t
, dev
, sb
->s_dev
)
904 ctf_integer(__u32
, group
, group
)
905 ctf_integer(bool, prefetch
, prefetch
)
909 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load
, ext4_read_block_bitmap_load
,
911 TP_PROTO(struct super_block
*sb
, unsigned long group
),
917 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load
, ext4_load_inode_bitmap
,
919 TP_PROTO(struct super_block
*sb
, unsigned long group
),
924 LTTNG_TRACEPOINT_EVENT(ext4_direct_IO_enter
,
925 TP_PROTO(struct inode
*inode
, loff_t offset
, unsigned long len
, int rw
),
927 TP_ARGS(inode
, offset
, len
, rw
),
930 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
931 ctf_integer(ino_t
, ino
, inode
->i_ino
)
932 ctf_integer(loff_t
, pos
, offset
)
933 ctf_integer(unsigned long, len
, len
)
934 ctf_integer(int, rw
, rw
)
938 LTTNG_TRACEPOINT_EVENT(ext4_direct_IO_exit
,
939 TP_PROTO(struct inode
*inode
, loff_t offset
, unsigned long len
,
942 TP_ARGS(inode
, offset
, len
, rw
, ret
),
945 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
946 ctf_integer(ino_t
, ino
, inode
->i_ino
)
947 ctf_integer(loff_t
, pos
, offset
)
948 ctf_integer(unsigned long, len
, len
)
949 ctf_integer(int, rw
, rw
)
950 ctf_integer(int, ret
, ret
)
954 LTTNG_TRACEPOINT_EVENT(ext4_fallocate_exit
,
955 TP_PROTO(struct inode
*inode
, loff_t offset
,
956 unsigned int max_blocks
, int ret
),
958 TP_ARGS(inode
, offset
, max_blocks
, ret
),
961 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
962 ctf_integer(ino_t
, ino
, inode
->i_ino
)
963 ctf_integer(loff_t
, pos
, offset
)
964 ctf_integer(unsigned int, blocks
, max_blocks
)
965 ctf_integer(int, ret
, ret
)
969 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,15,0))
971 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__fallocate_mode
,
972 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
, int mode
),
974 TP_ARGS(inode
, offset
, len
, mode
),
977 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
978 ctf_integer(ino_t
, ino
, inode
->i_ino
)
979 ctf_integer(loff_t
, pos
, offset
)
980 ctf_integer(loff_t
, len
, len
)
981 ctf_integer(int, mode
, mode
)
985 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode
, ext4_fallocate_enter
,
987 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
, int mode
),
989 TP_ARGS(inode
, offset
, len
, mode
)
992 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode
, ext4_punch_hole
,
994 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
, int mode
),
996 TP_ARGS(inode
, offset
, len
, mode
)
999 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode
, ext4_zero_range
,
1001 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
, int mode
),
1003 TP_ARGS(inode
, offset
, len
, mode
)
1006 #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,15,0)) */
1008 LTTNG_TRACEPOINT_EVENT(ext4_fallocate_enter
,
1009 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
, int mode
),
1011 TP_ARGS(inode
, offset
, len
, mode
),
1014 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1015 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1016 ctf_integer(loff_t
, pos
, offset
)
1017 ctf_integer(loff_t
, len
, len
)
1018 ctf_integer(int, mode
, mode
)
1022 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
1024 LTTNG_TRACEPOINT_EVENT(ext4_punch_hole
,
1025 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
),
1027 TP_ARGS(inode
, offset
, len
),
1030 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1031 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1032 ctf_integer(loff_t
, pos
, offset
)
1033 ctf_integer(loff_t
, len
, len
)
1037 #endif /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)) */
1039 #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,15,0)) */
1041 LTTNG_TRACEPOINT_EVENT(ext4_unlink_enter
,
1042 TP_PROTO(struct inode
*parent
, struct dentry
*dentry
),
1044 TP_ARGS(parent
, dentry
),
1047 ctf_integer(dev_t
, dev
, dentry
->d_inode
->i_sb
->s_dev
)
1048 ctf_integer(ino_t
, ino
, dentry
->d_inode
->i_ino
)
1049 ctf_integer(ino_t
, parent
, parent
->i_ino
)
1050 ctf_integer(loff_t
, size
, dentry
->d_inode
->i_size
)
1054 LTTNG_TRACEPOINT_EVENT(ext4_unlink_exit
,
1055 TP_PROTO(struct dentry
*dentry
, int ret
),
1057 TP_ARGS(dentry
, ret
),
1060 ctf_integer(dev_t
, dev
, dentry
->d_inode
->i_sb
->s_dev
)
1061 ctf_integer(ino_t
, ino
, dentry
->d_inode
->i_ino
)
1062 ctf_integer(int, ret
, ret
)
1066 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__truncate
,
1067 TP_PROTO(struct inode
*inode
),
1072 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1073 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1074 ctf_integer(unsigned int, blocks
, inode
->i_blocks
)
1078 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__truncate
, ext4_truncate_enter
,
1080 TP_PROTO(struct inode
*inode
),
1085 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__truncate
, ext4_truncate_exit
,
1087 TP_PROTO(struct inode
*inode
),
1092 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0))
1093 /* 'ux' is the uninitialized extent. */
1094 LTTNG_TRACEPOINT_EVENT(ext4_ext_convert_to_initialized_enter
,
1095 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
,
1096 struct ext4_extent
*ux
),
1098 TP_ARGS(inode
, map
, ux
),
1101 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1102 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1103 ctf_integer(ext4_lblk_t
, m_lblk
, map
->m_lblk
)
1104 ctf_integer(unsigned, m_len
, map
->m_len
)
1105 ctf_integer(ext4_lblk_t
, u_lblk
, le32_to_cpu(ux
->ee_block
))
1106 ctf_integer(unsigned, u_len
, ext4_ext_get_actual_len(ux
))
1107 ctf_integer(ext4_fsblk_t
, u_pblk
, ext4_ext_pblock(ux
))
1112 * 'ux' is the uninitialized extent.
1113 * 'ix' is the initialized extent to which blocks are transferred.
1115 LTTNG_TRACEPOINT_EVENT(ext4_ext_convert_to_initialized_fastpath
,
1116 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
,
1117 struct ext4_extent
*ux
, struct ext4_extent
*ix
),
1119 TP_ARGS(inode
, map
, ux
, ix
),
1122 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1123 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1124 ctf_integer(ext4_lblk_t
, m_lblk
, map
->m_lblk
)
1125 ctf_integer(unsigned, m_len
, map
->m_len
)
1126 ctf_integer(ext4_lblk_t
, u_lblk
, le32_to_cpu(ux
->ee_block
))
1127 ctf_integer(unsigned, u_len
, ext4_ext_get_actual_len(ux
))
1128 ctf_integer(ext4_fsblk_t
, u_pblk
, ext4_ext_pblock(ux
))
1129 ctf_integer(ext4_lblk_t
, i_lblk
, le32_to_cpu(ix
->ee_block
))
1130 ctf_integer(unsigned, i_len
, ext4_ext_get_actual_len(ix
))
1131 ctf_integer(ext4_fsblk_t
, i_pblk
, ext4_ext_pblock(ix
))
1136 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_enter
,
1137 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1138 unsigned int len
, unsigned int flags
),
1140 TP_ARGS(inode
, lblk
, len
, flags
),
1143 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1144 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1145 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1146 ctf_integer(unsigned int, len
, len
)
1147 ctf_integer(unsigned int, flags
, flags
)
1151 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_enter
, ext4_ext_map_blocks_enter
,
1152 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1153 unsigned len
, unsigned flags
),
1155 TP_ARGS(inode
, lblk
, len
, flags
)
1158 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_enter
, ext4_ind_map_blocks_enter
,
1159 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1160 unsigned len
, unsigned flags
),
1162 TP_ARGS(inode
, lblk
, len
, flags
)
1165 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
1167 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit
,
1168 TP_PROTO(struct inode
*inode
, unsigned flags
, struct ext4_map_blocks
*map
,
1171 TP_ARGS(inode
, flags
, map
, ret
),
1174 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1175 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1176 ctf_integer(unsigned int, flags
, flags
)
1177 ctf_integer(ext4_fsblk_t
, pblk
, map
->m_pblk
)
1178 ctf_integer(ext4_lblk_t
, lblk
, map
->m_lblk
)
1179 ctf_integer(unsigned int, len
, map
->m_len
)
1180 ctf_integer(unsigned int, mflags
, map
->m_flags
)
1181 ctf_integer(int, ret
, ret
)
1185 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ext_map_blocks_exit
,
1186 TP_PROTO(struct inode
*inode
, unsigned flags
,
1187 struct ext4_map_blocks
*map
, int ret
),
1189 TP_ARGS(inode
, flags
, map
, ret
)
1192 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ind_map_blocks_exit
,
1193 TP_PROTO(struct inode
*inode
, unsigned flags
,
1194 struct ext4_map_blocks
*map
, int ret
),
1196 TP_ARGS(inode
, flags
, map
, ret
)
1199 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0))
1201 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit
,
1202 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
, int ret
),
1204 TP_ARGS(inode
, map
, ret
),
1207 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1208 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1209 ctf_integer(ext4_fsblk_t
, pblk
, map
->m_pblk
)
1210 ctf_integer(ext4_lblk_t
, lblk
, map
->m_lblk
)
1211 ctf_integer(unsigned int, len
, map
->m_len
)
1212 ctf_integer(unsigned int, mflags
, map
->m_flags
)
1213 ctf_integer(int, ret
, ret
)
1217 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ext_map_blocks_exit
,
1218 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
, int ret
),
1220 TP_ARGS(inode
, map
, ret
)
1223 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ind_map_blocks_exit
,
1224 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
, int ret
),
1226 TP_ARGS(inode
, map
, ret
)
1229 #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) */
1231 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit
,
1232 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1233 ext4_fsblk_t pblk
, unsigned int len
, int ret
),
1235 TP_ARGS(inode
, lblk
, pblk
, len
, ret
),
1238 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1239 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1240 ctf_integer(ext4_fsblk_t
, pblk
, pblk
)
1241 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1242 ctf_integer(unsigned int, len
, len
)
1243 ctf_integer(int, ret
, ret
)
1247 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ext_map_blocks_exit
,
1248 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1249 ext4_fsblk_t pblk
, unsigned len
, int ret
),
1251 TP_ARGS(inode
, lblk
, pblk
, len
, ret
)
1254 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ind_map_blocks_exit
,
1255 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1256 ext4_fsblk_t pblk
, unsigned len
, int ret
),
1258 TP_ARGS(inode
, lblk
, pblk
, len
, ret
)
1261 #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) */
1263 LTTNG_TRACEPOINT_EVENT(ext4_ext_load_extent
,
1264 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, ext4_fsblk_t pblk
),
1266 TP_ARGS(inode
, lblk
, pblk
),
1269 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1270 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1271 ctf_integer(ext4_fsblk_t
, pblk
, pblk
)
1272 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1276 LTTNG_TRACEPOINT_EVENT(ext4_load_inode
,
1277 TP_PROTO(struct inode
*inode
),
1282 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1283 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1287 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,5,0))
1289 LTTNG_TRACEPOINT_EVENT(ext4_journal_start
,
1290 TP_PROTO(struct super_block
*sb
, int blocks
, int rsv_blocks
,
1291 int revoke_creds
, unsigned long IP
),
1293 TP_ARGS(sb
, blocks
, rsv_blocks
, revoke_creds
, IP
),
1296 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1297 ctf_integer(unsigned long, ip
, IP
)
1298 ctf_integer(int, blocks
, blocks
)
1299 ctf_integer(int, rsv_blocks
, rsv_blocks
)
1300 ctf_integer(int, revoke_creds
, revoke_creds
)
1304 LTTNG_TRACEPOINT_EVENT(ext4_journal_start_reserved
,
1305 TP_PROTO(struct super_block
*sb
, int blocks
, unsigned long IP
),
1307 TP_ARGS(sb
, blocks
, IP
),
1310 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1311 ctf_integer(unsigned long, ip
, IP
)
1312 ctf_integer(int, blocks
, blocks
)
1316 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
1318 LTTNG_TRACEPOINT_EVENT(ext4_journal_start
,
1319 TP_PROTO(struct super_block
*sb
, int blocks
, int rsv_blocks
,
1322 TP_ARGS(sb
, blocks
, rsv_blocks
, IP
),
1325 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1326 ctf_integer(unsigned long, ip
, IP
)
1327 ctf_integer(int, blocks
, blocks
)
1328 ctf_integer(int, rsv_blocks
, rsv_blocks
)
1332 LTTNG_TRACEPOINT_EVENT(ext4_journal_start_reserved
,
1333 TP_PROTO(struct super_block
*sb
, int blocks
, unsigned long IP
),
1335 TP_ARGS(sb
, blocks
, IP
),
1338 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1339 ctf_integer(unsigned long, ip
, IP
)
1340 ctf_integer(int, blocks
, blocks
)
1344 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0))
1346 LTTNG_TRACEPOINT_EVENT(ext4_journal_start
,
1347 TP_PROTO(struct super_block
*sb
, int nblocks
, unsigned long IP
),
1349 TP_ARGS(sb
, nblocks
, IP
),
1352 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1353 ctf_integer(unsigned long, ip
, IP
)
1354 ctf_integer(int, nblocks
, nblocks
)
1358 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__trim
,
1359 TP_PROTO(struct super_block
*sb
,
1361 ext4_grpblk_t start
,
1364 TP_ARGS(sb
, group
, start
, len
),
1367 ctf_integer(int, dev_major
, MAJOR(sb
->s_dev
))
1368 ctf_integer(int, dev_minor
, MINOR(sb
->s_dev
))
1369 ctf_integer(__u32
, group
, group
)
1370 ctf_integer(int, start
, start
)
1371 ctf_integer(int, len
, len
)
1375 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__trim
, ext4_trim_extent
,
1377 TP_PROTO(struct super_block
*sb
,
1379 ext4_grpblk_t start
,
1382 TP_ARGS(sb
, group
, start
, len
)
1385 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__trim
, ext4_trim_all_free
,
1387 TP_PROTO(struct super_block
*sb
,
1389 ext4_grpblk_t start
,
1392 TP_ARGS(sb
, group
, start
, len
)
1396 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0))
1398 LTTNG_TRACEPOINT_EVENT(ext4_ext_handle_uninitialized_extents
,
1399 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0))
1400 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
, int flags
,
1401 unsigned int allocated
, ext4_fsblk_t newblock
),
1403 TP_ARGS(inode
, map
, flags
, allocated
, newblock
),
1404 #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) */
1405 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
,
1406 unsigned int allocated
, ext4_fsblk_t newblock
),
1408 TP_ARGS(inode
, map
, allocated
, newblock
),
1409 #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) */
1412 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1413 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1414 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0))
1415 ctf_integer(int, flags
, flags
)
1416 #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) */
1417 ctf_integer(int, flags
, map
->m_flags
)
1418 #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) */
1419 ctf_integer(ext4_lblk_t
, lblk
, map
->m_lblk
)
1420 ctf_integer(ext4_fsblk_t
, pblk
, map
->m_pblk
)
1421 ctf_integer(unsigned int, len
, map
->m_len
)
1422 ctf_integer(unsigned int, allocated
, allocated
)
1423 ctf_integer(ext4_fsblk_t
, newblk
, newblock
)
1427 LTTNG_TRACEPOINT_EVENT(ext4_get_implied_cluster_alloc_exit
,
1428 TP_PROTO(struct super_block
*sb
, struct ext4_map_blocks
*map
, int ret
),
1430 TP_ARGS(sb
, map
, ret
),
1433 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1434 ctf_integer(unsigned int, flags
, map
->m_flags
)
1435 ctf_integer(ext4_lblk_t
, lblk
, map
->m_lblk
)
1436 ctf_integer(ext4_fsblk_t
, pblk
, map
->m_pblk
)
1437 ctf_integer(unsigned int, len
, map
->m_len
)
1438 ctf_integer(int, ret
, ret
)
1442 LTTNG_TRACEPOINT_EVENT(ext4_ext_put_in_cache
,
1443 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, unsigned int len
,
1444 ext4_fsblk_t start
),
1446 TP_ARGS(inode
, lblk
, len
, start
),
1449 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1450 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1451 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1452 ctf_integer(unsigned int, len
, len
)
1453 ctf_integer(ext4_fsblk_t
, start
, start
)
1457 LTTNG_TRACEPOINT_EVENT(ext4_ext_in_cache
,
1458 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, int ret
),
1460 TP_ARGS(inode
, lblk
, ret
),
1463 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1464 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1465 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1466 ctf_integer(int, ret
, ret
)
1470 LTTNG_TRACEPOINT_EVENT(ext4_find_delalloc_range
,
1471 TP_PROTO(struct inode
*inode
, ext4_lblk_t from
, ext4_lblk_t to
,
1472 int reverse
, int found
, ext4_lblk_t found_blk
),
1474 TP_ARGS(inode
, from
, to
, reverse
, found
, found_blk
),
1477 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1478 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1479 ctf_integer(ext4_lblk_t
, from
, from
)
1480 ctf_integer(ext4_lblk_t
, to
, to
)
1481 ctf_integer(int, reverse
, reverse
)
1482 ctf_integer(int, found
, found
)
1483 ctf_integer(ext4_lblk_t
, found_blk
, found_blk
)
1487 LTTNG_TRACEPOINT_EVENT(ext4_get_reserved_cluster_alloc
,
1488 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, unsigned int len
),
1490 TP_ARGS(inode
, lblk
, len
),
1493 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1494 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1495 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1496 ctf_integer(unsigned int, len
, len
)
1500 LTTNG_TRACEPOINT_EVENT(ext4_ext_show_extent
,
1501 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, ext4_fsblk_t pblk
,
1502 unsigned short len
),
1504 TP_ARGS(inode
, lblk
, pblk
, len
),
1507 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1508 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1509 ctf_integer(ext4_fsblk_t
, pblk
, pblk
)
1510 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1511 ctf_integer(unsigned short, len
, len
)
1515 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0) || \
1516 LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0))
1518 LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks
,
1519 TP_PROTO(struct inode
*inode
, struct ext4_extent
*ex
,
1520 ext4_lblk_t from
, ext4_fsblk_t to
,
1521 struct partial_cluster
*pc
),
1523 TP_ARGS(inode
, ex
, from
, to
, pc
),
1526 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1527 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1528 ctf_integer(ext4_lblk_t
, from
, from
)
1529 ctf_integer(ext4_lblk_t
, to
, to
)
1530 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1531 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1532 ctf_integer(unsigned short, ee_len
, ext4_ext_get_actual_len(ex
))
1533 ctf_integer(ext4_fsblk_t
, pc_pclu
, pc
->pclu
)
1534 ctf_integer(ext4_lblk_t
, pc_lblk
, pc
->lblk
)
1535 ctf_integer(int, pc_state
, pc
->state
)
1539 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
1541 LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks
,
1542 TP_PROTO(struct inode
*inode
, struct ext4_extent
*ex
,
1543 ext4_lblk_t from
, ext4_fsblk_t to
,
1544 long long partial_cluster
),
1546 TP_ARGS(inode
, ex
, from
, to
, partial_cluster
),
1549 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1550 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1551 ctf_integer(ext4_lblk_t
, from
, from
)
1552 ctf_integer(ext4_lblk_t
, to
, to
)
1553 ctf_integer(long long, partial
, partial_cluster
)
1554 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1555 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1556 ctf_integer(unsigned short, ee_len
, ext4_ext_get_actual_len(ex
))
1562 LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks
,
1563 TP_PROTO(struct inode
*inode
, struct ext4_extent
*ex
,
1564 ext4_lblk_t from
, ext4_fsblk_t to
,
1565 ext4_fsblk_t partial_cluster
),
1567 TP_ARGS(inode
, ex
, from
, to
, partial_cluster
),
1570 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1571 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1572 ctf_integer(ext4_lblk_t
, from
, from
)
1573 ctf_integer(ext4_lblk_t
, to
, to
)
1574 ctf_integer(ext4_fsblk_t
, partial
, partial_cluster
)
1575 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1576 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1577 ctf_integer(unsigned short, ee_len
, ext4_ext_get_actual_len(ex
))
1583 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0) || \
1584 LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0))
1586 LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf
,
1587 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
,
1588 struct ext4_extent
*ex
,
1589 struct partial_cluster
*pc
),
1591 TP_ARGS(inode
, start
, ex
, pc
),
1594 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1595 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1596 ctf_integer(ext4_lblk_t
, start
, start
)
1597 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1598 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1599 ctf_integer(short, ee_len
, ext4_ext_get_actual_len(ex
))
1600 ctf_integer(ext4_fsblk_t
, pc_pclu
, pc
->pclu
)
1601 ctf_integer(ext4_lblk_t
, pc_lblk
, pc
->lblk
)
1602 ctf_integer(int, pc_state
, pc
->state
)
1606 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
1608 LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf
,
1609 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
,
1610 struct ext4_extent
*ex
,
1611 long long partial_cluster
),
1613 TP_ARGS(inode
, start
, ex
, partial_cluster
),
1616 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1617 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1618 ctf_integer(long long, partial
, partial_cluster
)
1619 ctf_integer(ext4_lblk_t
, start
, start
)
1620 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1621 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1622 ctf_integer(short, ee_len
, ext4_ext_get_actual_len(ex
))
1628 LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf
,
1629 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
,
1630 struct ext4_extent
*ex
, ext4_fsblk_t partial_cluster
),
1632 TP_ARGS(inode
, start
, ex
, partial_cluster
),
1635 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1636 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1637 ctf_integer(long long, partial
, partial_cluster
)
1638 ctf_integer(ext4_lblk_t
, start
, start
)
1639 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1640 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1641 ctf_integer(short, ee_len
, ext4_ext_get_actual_len(ex
))
1647 LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_idx
,
1648 TP_PROTO(struct inode
*inode
, ext4_fsblk_t pblk
),
1650 TP_ARGS(inode
, pblk
),
1653 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1654 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1655 ctf_integer(ext4_fsblk_t
, pblk
, pblk
)
1659 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
1661 LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space
,
1662 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
,
1663 ext4_lblk_t end
, int depth
),
1665 TP_ARGS(inode
, start
, end
, depth
),
1668 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1669 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1670 ctf_integer(ext4_lblk_t
, start
, start
)
1671 ctf_integer(ext4_lblk_t
, end
, end
)
1672 ctf_integer(int, depth
, depth
)
1678 LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space
,
1679 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
, int depth
),
1681 TP_ARGS(inode
, start
, depth
),
1684 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1685 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1686 ctf_integer(ext4_lblk_t
, start
, start
)
1687 ctf_integer(int, depth
, depth
)
1693 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0) || \
1694 LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0))
1696 LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done
,
1697 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
, ext4_lblk_t end
,
1698 int depth
, struct partial_cluster
*pc
, __le16 eh_entries
),
1700 TP_ARGS(inode
, start
, end
, depth
, pc
, eh_entries
),
1703 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1704 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1705 ctf_integer(ext4_lblk_t
, start
, start
)
1706 ctf_integer(ext4_lblk_t
, end
, end
)
1707 ctf_integer(int, depth
, depth
)
1708 ctf_integer(unsigned short, eh_entries
, le16_to_cpu(eh_entries
))
1709 ctf_integer(ext4_fsblk_t
, pc_pclu
, pc
->pclu
)
1710 ctf_integer(ext4_lblk_t
, pc_lblk
, pc
->lblk
)
1711 ctf_integer(int, pc_state
, pc
->state
)
1715 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
1717 LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done
,
1718 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
, ext4_lblk_t end
,
1719 int depth
, long long partial
, __le16 eh_entries
),
1721 TP_ARGS(inode
, start
, end
, depth
, partial
, eh_entries
),
1724 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1725 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1726 ctf_integer(ext4_lblk_t
, start
, start
)
1727 ctf_integer(ext4_lblk_t
, end
, end
)
1728 ctf_integer(int, depth
, depth
)
1729 ctf_integer(long long, partial
, partial
)
1730 ctf_integer(unsigned short, eh_entries
, le16_to_cpu(eh_entries
))
1736 LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done
,
1737 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
, int depth
,
1738 ext4_lblk_t partial
, unsigned short eh_entries
),
1740 TP_ARGS(inode
, start
, depth
, partial
, eh_entries
),
1743 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1744 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1745 ctf_integer(ext4_lblk_t
, start
, start
)
1746 ctf_integer(int, depth
, depth
)
1747 ctf_integer(ext4_lblk_t
, partial
, partial
)
1748 ctf_integer(unsigned short, eh_entries
, eh_entries
)
1756 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0))
1758 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__es_extent
,
1759 TP_PROTO(struct inode
*inode
, struct extent_status
*es
),
1764 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1765 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1766 ctf_integer(ext4_lblk_t
, lblk
, es
->es_lblk
)
1767 ctf_integer(ext4_lblk_t
, len
, es
->es_len
)
1768 ctf_integer(ext4_fsblk_t
, pblk
, ext4_es_pblock(es
))
1769 ctf_integer(char, status
, ext4_es_status(es
))
1773 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__es_extent
, ext4_es_insert_extent
,
1774 TP_PROTO(struct inode
*inode
, struct extent_status
*es
),
1779 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__es_extent
, ext4_es_cache_extent
,
1780 TP_PROTO(struct inode
*inode
, struct extent_status
*es
),
1785 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
1787 LTTNG_TRACEPOINT_EVENT(ext4_es_insert_extent
,
1788 TP_PROTO(struct inode
*inode
, struct extent_status
*es
),
1793 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1794 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1795 ctf_integer(ext4_lblk_t
, lblk
, es
->es_lblk
)
1796 ctf_integer(ext4_lblk_t
, len
, es
->es_len
)
1797 ctf_integer(ext4_fsblk_t
, pblk
, ext4_es_pblock(es
))
1798 ctf_integer(char, status
, ext4_es_status(es
) >> 60)
1802 LTTNG_TRACEPOINT_EVENT(ext4_es_remove_extent
,
1803 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, ext4_lblk_t len
),
1805 TP_ARGS(inode
, lblk
, len
),
1808 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1809 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1810 ctf_integer(loff_t
, lblk
, lblk
)
1811 ctf_integer(loff_t
, len
, len
)
1815 LTTNG_TRACEPOINT_EVENT(ext4_es_find_delayed_extent_range_enter
,
1816 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
),
1818 TP_ARGS(inode
, lblk
),
1821 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1822 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1823 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1827 LTTNG_TRACEPOINT_EVENT(ext4_es_find_delayed_extent_range_exit
,
1828 TP_PROTO(struct inode
*inode
, struct extent_status
*es
),
1833 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1834 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1835 ctf_integer(ext4_lblk_t
, lblk
, es
->es_lblk
)
1836 ctf_integer(ext4_lblk_t
, len
, es
->es_len
)
1837 ctf_integer(ext4_fsblk_t
, pblk
, ext4_es_pblock(es
))
1838 ctf_integer(char, status
, ext4_es_status(es
) >> 60)
1842 LTTNG_TRACEPOINT_EVENT(ext4_es_lookup_extent_enter
,
1843 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
),
1845 TP_ARGS(inode
, lblk
),
1848 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1849 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1850 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1854 LTTNG_TRACEPOINT_EVENT(ext4_es_lookup_extent_exit
,
1855 TP_PROTO(struct inode
*inode
, struct extent_status
*es
,
1858 TP_ARGS(inode
, es
, found
),
1861 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1862 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1863 ctf_integer(ext4_lblk_t
, lblk
, es
->es_lblk
)
1864 ctf_integer(ext4_lblk_t
, len
, es
->es_len
)
1865 ctf_integer(ext4_fsblk_t
, pblk
, ext4_es_pblock(es
))
1866 ctf_integer(char, status
, ext4_es_status(es
) >> 60)
1867 ctf_integer(int, found
, found
)
1871 LTTNG_TRACEPOINT_EVENT(ext4_es_shrink_enter
,
1872 TP_PROTO(struct super_block
*sb
, int nr_to_scan
, int cache_cnt
),
1874 TP_ARGS(sb
, nr_to_scan
, cache_cnt
),
1877 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1878 ctf_integer(int, nr_to_scan
, nr_to_scan
)
1879 ctf_integer(int, cache_cnt
, cache_cnt
)
1883 LTTNG_TRACEPOINT_EVENT(ext4_es_shrink_exit
,
1884 TP_PROTO(struct super_block
*sb
, int shrunk_nr
, int cache_cnt
),
1886 TP_ARGS(sb
, shrunk_nr
, cache_cnt
),
1889 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1890 ctf_integer(int, shrunk_nr
, shrunk_nr
)
1891 ctf_integer(int, cache_cnt
, cache_cnt
)
1897 #endif /* LTTNG_TRACE_EXT4_H */
1899 /* This part must be outside protection */
1900 #include <probes/define_trace.h>