1 /* SPDX-License-Identifier: GPL-2.0-only */
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 <lttng/tracepoint-event.h>
9 #include <linux/writeback.h>
10 #include <lttng/kernel-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 (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0))
25 #define EXT4_I(inode) (container_of(inode, struct ext4_inode_info, vfs_inode))
26 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_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 (LTTNG_LINUX_VERSION_CODE >= LTTNG_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_hex(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 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,19,0))
126 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_begin
,
128 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
),
130 TP_ARGS(inode
, pos
, len
),
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
)
140 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin
, ext4_write_begin
,
142 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
),
144 TP_ARGS(inode
, pos
, len
)
147 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin
, ext4_da_write_begin
,
149 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
),
151 TP_ARGS(inode
, pos
, len
)
154 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_begin
,
156 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
159 TP_ARGS(inode
, pos
, len
, flags
),
162 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
163 ctf_integer(ino_t
, ino
, inode
->i_ino
)
164 ctf_integer(loff_t
, pos
, pos
)
165 ctf_integer(unsigned int, len
, len
)
166 ctf_integer(unsigned int, flags
, flags
)
170 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin
, ext4_write_begin
,
172 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
175 TP_ARGS(inode
, pos
, len
, flags
)
178 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin
, ext4_da_write_begin
,
180 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
183 TP_ARGS(inode
, pos
, len
, flags
)
187 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_end
,
188 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
189 unsigned int copied
),
191 TP_ARGS(inode
, pos
, len
, copied
),
194 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
195 ctf_integer(ino_t
, ino
, inode
->i_ino
)
196 ctf_integer(loff_t
, pos
, pos
)
197 ctf_integer(unsigned int, len
, len
)
198 ctf_integer(unsigned int, copied
, copied
)
202 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end
, ext4_ordered_write_end
,
204 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
205 unsigned int copied
),
207 TP_ARGS(inode
, pos
, len
, copied
)
210 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end
, ext4_writeback_write_end
,
212 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
213 unsigned int copied
),
215 TP_ARGS(inode
, pos
, len
, copied
)
218 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end
, ext4_journalled_write_end
,
220 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
221 unsigned int copied
),
223 TP_ARGS(inode
, pos
, len
, copied
)
226 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end
, ext4_da_write_end
,
228 TP_PROTO(struct inode
*inode
, loff_t pos
, unsigned int len
,
229 unsigned int copied
),
231 TP_ARGS(inode
, pos
, len
, copied
)
234 LTTNG_TRACEPOINT_EVENT(ext4_da_writepages
,
235 TP_PROTO(struct inode
*inode
, struct writeback_control
*wbc
),
240 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
241 ctf_integer(ino_t
, ino
, inode
->i_ino
)
242 ctf_integer(long, nr_to_write
, wbc
->nr_to_write
)
243 ctf_integer(long, pages_skipped
, wbc
->pages_skipped
)
244 ctf_integer(loff_t
, range_start
, wbc
->range_start
)
245 ctf_integer(loff_t
, range_end
, wbc
->range_end
)
246 ctf_integer(pgoff_t
, writeback_index
, inode
->i_mapping
->writeback_index
)
247 ctf_integer(int, sync_mode
, wbc
->sync_mode
)
248 ctf_integer(char, for_kupdate
, wbc
->for_kupdate
)
249 ctf_integer(char, range_cyclic
, wbc
->range_cyclic
)
253 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
255 LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages
,
256 TP_PROTO(struct inode
*inode
, pgoff_t first_page
,
257 struct writeback_control
*wbc
),
259 TP_ARGS(inode
, first_page
, wbc
),
262 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
263 ctf_integer(ino_t
, ino
, inode
->i_ino
)
264 ctf_integer(pgoff_t
, first_page
, first_page
)
265 ctf_integer(long, nr_to_write
, wbc
->nr_to_write
)
266 ctf_integer(int, sync_mode
, wbc
->sync_mode
)
272 LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages
,
273 TP_PROTO(struct inode
*inode
, struct mpage_da_data
*mpd
),
278 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
279 ctf_integer(ino_t
, ino
, inode
->i_ino
)
280 ctf_integer(__u64
, b_blocknr
, mpd
->b_blocknr
)
281 ctf_integer(__u32
, b_size
, mpd
->b_size
)
282 ctf_integer(__u32
, b_state
, mpd
->b_state
)
283 ctf_integer(unsigned long, first_page
, mpd
->first_page
)
284 ctf_integer(int, io_done
, mpd
->io_done
)
285 ctf_integer(int, pages_written
, mpd
->pages_written
)
286 ctf_integer(int, sync_mode
, mpd
->wbc
->sync_mode
)
292 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
294 LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages_extent
,
295 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
),
300 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
301 ctf_integer(ino_t
, ino
, inode
->i_ino
)
302 ctf_integer(__u64
, lblk
, map
->m_lblk
)
303 ctf_integer(__u32
, len
, map
->m_len
)
304 ctf_integer(__u32
, flags
, map
->m_flags
)
310 LTTNG_TRACEPOINT_EVENT(ext4_da_writepages_result
,
311 TP_PROTO(struct inode
*inode
, struct writeback_control
*wbc
,
312 int ret
, int pages_written
),
314 TP_ARGS(inode
, wbc
, ret
, pages_written
),
317 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
318 ctf_integer(ino_t
, ino
, inode
->i_ino
)
319 ctf_integer(int, ret
, ret
)
320 ctf_integer(int, pages_written
, pages_written
)
321 ctf_integer(long, pages_skipped
, wbc
->pages_skipped
)
322 ctf_integer(pgoff_t
, writeback_index
, inode
->i_mapping
->writeback_index
)
323 ctf_integer(int, sync_mode
, wbc
->sync_mode
)
327 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__page_op
,
328 TP_PROTO(struct page
*page
),
333 ctf_integer(dev_t
, dev
, page
->mapping
->host
->i_sb
->s_dev
)
334 ctf_integer(ino_t
, ino
, page
->mapping
->host
->i_ino
)
335 ctf_integer(pgoff_t
, index
, page
->index
)
339 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op
, ext4_writepage
,
341 TP_PROTO(struct page
*page
),
346 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op
, ext4_readpage
,
348 TP_PROTO(struct page
*page
),
353 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op
, ext4_releasepage
,
355 TP_PROTO(struct page
*page
),
360 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
362 LTTNG_TRACEPOINT_EVENT_CLASS(ext4_invalidatepage_op
,
363 TP_PROTO(struct page
*page
, unsigned int offset
, unsigned int length
),
365 TP_ARGS(page
, offset
, length
),
368 ctf_integer(dev_t
, dev
, page
->mapping
->host
->i_sb
->s_dev
)
369 ctf_integer(ino_t
, ino
, page
->mapping
->host
->i_ino
)
370 ctf_integer(pgoff_t
, index
, page
->index
)
371 ctf_integer(unsigned int, offset
, offset
)
372 ctf_integer(unsigned int, length
, length
)
376 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4_invalidatepage_op
, ext4_invalidatepage
,
377 TP_PROTO(struct page
*page
, unsigned int offset
, unsigned int length
),
379 TP_ARGS(page
, offset
, length
)
382 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4_invalidatepage_op
, ext4_journalled_invalidatepage
,
383 TP_PROTO(struct page
*page
, unsigned int offset
, unsigned int length
),
385 TP_ARGS(page
, offset
, length
)
390 LTTNG_TRACEPOINT_EVENT(ext4_invalidatepage
,
391 TP_PROTO(struct page
*page
, unsigned long offset
),
393 TP_ARGS(page
, offset
),
396 ctf_integer(dev_t
, dev
, page
->mapping
->host
->i_sb
->s_dev
)
397 ctf_integer(ino_t
, ino
, page
->mapping
->host
->i_ino
)
398 ctf_integer(pgoff_t
, index
, page
->index
)
399 ctf_integer(unsigned long, offset
, offset
)
406 LTTNG_TRACEPOINT_EVENT(ext4_discard_blocks
,
407 TP_PROTO(struct super_block
*sb
, unsigned long long blk
,
408 unsigned long long count
),
410 TP_ARGS(sb
, blk
, count
),
413 ctf_integer(dev_t
, dev
, sb
->s_dev
)
414 ctf_integer(__u64
, blk
, blk
)
415 ctf_integer(__u64
, count
, count
)
419 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__mb_new_pa
,
420 TP_PROTO(struct ext4_allocation_context
*ac
,
421 struct ext4_prealloc_space
*pa
),
426 ctf_integer(dev_t
, dev
, ac
->ac_sb
->s_dev
)
427 ctf_integer(ino_t
, ino
, ac
->ac_inode
->i_ino
)
428 ctf_integer(__u64
, pa_pstart
, pa
->pa_pstart
)
429 ctf_integer(__u64
, pa_lstart
, pa
->pa_lstart
)
430 ctf_integer(__u32
, pa_len
, pa
->pa_len
)
434 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mb_new_pa
, ext4_mb_new_inode_pa
,
436 TP_PROTO(struct ext4_allocation_context
*ac
,
437 struct ext4_prealloc_space
*pa
),
442 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mb_new_pa
, ext4_mb_new_group_pa
,
444 TP_PROTO(struct ext4_allocation_context
*ac
,
445 struct ext4_prealloc_space
*pa
),
450 LTTNG_TRACEPOINT_EVENT(ext4_mb_release_inode_pa
,
452 struct ext4_prealloc_space
*pa
,
453 unsigned long long block
, unsigned int count
),
455 TP_ARGS(pa
, block
, count
),
458 ctf_integer(dev_t
, dev
, pa
->pa_inode
->i_sb
->s_dev
)
459 ctf_integer(ino_t
, ino
, pa
->pa_inode
->i_ino
)
460 ctf_integer(__u64
, block
, block
)
461 ctf_integer(__u32
, count
, count
)
465 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,3,0))
466 LTTNG_TRACEPOINT_EVENT(ext4_mb_release_group_pa
,
468 TP_PROTO(struct super_block
*sb
, struct ext4_prealloc_space
*pa
),
473 ctf_integer(dev_t
, dev
, sb
->s_dev
)
474 ctf_integer(__u64
, pa_pstart
, pa
->pa_pstart
)
475 ctf_integer(__u32
, pa_len
, pa
->pa_len
)
479 LTTNG_TRACEPOINT_EVENT(ext4_mb_release_group_pa
,
481 TP_PROTO(struct ext4_prealloc_space
*pa
),
486 ctf_integer(dev_t
, dev
, pa
->pa_inode
->i_sb
->s_dev
)
487 ctf_integer(__u64
, pa_pstart
, pa
->pa_pstart
)
488 ctf_integer(__u32
, pa_len
, pa
->pa_len
)
493 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,8,0))
494 LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations
,
495 TP_PROTO(struct inode
*inode
, unsigned int len
),
500 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
501 ctf_integer(ino_t
, ino
, inode
->i_ino
)
502 ctf_integer(unsigned int, len
, len
)
505 #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0) || \
506 LTTNG_KERNEL_RANGE(5,8,6, 5,9,0))
507 LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations
,
508 TP_PROTO(struct inode
*inode
, unsigned int len
, unsigned int needed
),
510 TP_ARGS(inode
, len
, needed
),
513 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
514 ctf_integer(ino_t
, ino
, inode
->i_ino
)
515 ctf_integer(unsigned int, len
, len
)
516 ctf_integer(unsigned int, needed
, needed
)
520 LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations
,
521 TP_PROTO(struct inode
*inode
),
526 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
527 ctf_integer(ino_t
, ino
, inode
->i_ino
)
532 LTTNG_TRACEPOINT_EVENT(ext4_mb_discard_preallocations
,
533 TP_PROTO(struct super_block
*sb
, int needed
),
538 ctf_integer(dev_t
, dev
, sb
->s_dev
)
539 ctf_integer(int, needed
, needed
)
543 LTTNG_TRACEPOINT_EVENT(ext4_request_blocks
,
544 TP_PROTO(struct ext4_allocation_request
*ar
),
549 ctf_integer(dev_t
, dev
, ar
->inode
->i_sb
->s_dev
)
550 ctf_integer(ino_t
, ino
, ar
->inode
->i_ino
)
551 ctf_integer(unsigned int, len
, ar
->len
)
552 ctf_integer(__u32
, logical
, ar
->logical
)
553 ctf_integer(__u32
, lleft
, ar
->lleft
)
554 ctf_integer(__u32
, lright
, ar
->lright
)
555 ctf_integer(__u64
, goal
, ar
->goal
)
556 ctf_integer(__u64
, pleft
, ar
->pleft
)
557 ctf_integer(__u64
, pright
, ar
->pright
)
558 ctf_integer(unsigned int, flags
, ar
->flags
)
562 LTTNG_TRACEPOINT_EVENT(ext4_allocate_blocks
,
563 TP_PROTO(struct ext4_allocation_request
*ar
, unsigned long long block
),
568 ctf_integer(dev_t
, dev
, ar
->inode
->i_sb
->s_dev
)
569 ctf_integer(ino_t
, ino
, ar
->inode
->i_ino
)
570 ctf_integer(__u64
, block
, block
)
571 ctf_integer(unsigned int, len
, ar
->len
)
572 ctf_integer(__u32
, logical
, ar
->logical
)
573 ctf_integer(__u32
, lleft
, ar
->lleft
)
574 ctf_integer(__u32
, lright
, ar
->lright
)
575 ctf_integer(__u64
, goal
, ar
->goal
)
576 ctf_integer(__u64
, pleft
, ar
->pleft
)
577 ctf_integer(__u64
, pright
, ar
->pright
)
578 ctf_integer(unsigned int, flags
, ar
->flags
)
582 LTTNG_TRACEPOINT_EVENT(ext4_free_blocks
,
583 TP_PROTO(struct inode
*inode
, __u64 block
, unsigned long count
,
586 TP_ARGS(inode
, block
, count
, flags
),
589 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
590 ctf_integer(ino_t
, ino
, inode
->i_ino
)
591 ctf_integer(__u64
, block
, block
)
592 ctf_integer(unsigned long, count
, count
)
593 ctf_integer(int, flags
, flags
)
594 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
598 LTTNG_TRACEPOINT_EVENT(ext4_sync_file_enter
,
599 TP_PROTO(struct file
*file
, int datasync
),
601 TP_ARGS(file
, datasync
),
604 ctf_integer(dev_t
, dev
, file
->f_path
.dentry
->d_inode
->i_sb
->s_dev
)
605 ctf_integer(ino_t
, ino
, file
->f_path
.dentry
->d_inode
->i_ino
)
606 ctf_integer(ino_t
, parent
, file
->f_path
.dentry
->d_parent
->d_inode
->i_ino
)
607 ctf_integer(int, datasync
, datasync
)
611 LTTNG_TRACEPOINT_EVENT(ext4_sync_file_exit
,
612 TP_PROTO(struct inode
*inode
, int ret
),
617 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
618 ctf_integer(ino_t
, ino
, inode
->i_ino
)
619 ctf_integer(int, ret
, ret
)
623 LTTNG_TRACEPOINT_EVENT(ext4_sync_fs
,
624 TP_PROTO(struct super_block
*sb
, int wait
),
629 ctf_integer(dev_t
, dev
, sb
->s_dev
)
630 ctf_integer(int, wait
, wait
)
635 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0))
636 LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks
,
637 TP_PROTO(struct inode
*inode
),
642 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
643 ctf_integer(ino_t
, ino
, inode
->i_ino
)
644 ctf_integer(unsigned int, data_blocks
, EXT4_I(inode
)->i_reserved_data_blocks
)
648 LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks
,
649 TP_PROTO(struct inode
*inode
),
654 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
655 ctf_integer(ino_t
, ino
, inode
->i_ino
)
656 ctf_integer(unsigned int, data_blocks
, EXT4_I(inode
)->i_reserved_data_blocks
)
657 ctf_integer(unsigned int, meta_blocks
, EXT4_I(inode
)->i_reserved_meta_blocks
)
662 LTTNG_TRACEPOINT_EVENT(ext4_mballoc_alloc
,
663 TP_PROTO(struct ext4_allocation_context
*ac
),
668 ctf_integer(dev_t
, dev
, ac
->ac_inode
->i_sb
->s_dev
)
669 ctf_integer(ino_t
, ino
, ac
->ac_inode
->i_ino
)
670 ctf_integer(__u32
, orig_logical
, ac
->ac_o_ex
.fe_logical
)
671 ctf_integer(int, orig_start
, ac
->ac_o_ex
.fe_start
)
672 ctf_integer(__u32
, orig_group
, ac
->ac_o_ex
.fe_group
)
673 ctf_integer(int, orig_len
, ac
->ac_o_ex
.fe_len
)
674 ctf_integer(__u32
, goal_logical
, ac
->ac_g_ex
.fe_logical
)
675 ctf_integer(int, goal_start
, ac
->ac_g_ex
.fe_start
)
676 ctf_integer(__u32
, goal_group
, ac
->ac_g_ex
.fe_group
)
677 ctf_integer(int, goal_len
, ac
->ac_g_ex
.fe_len
)
678 ctf_integer(__u32
, result_logical
, ac
->ac_f_ex
.fe_logical
)
679 ctf_integer(int, result_start
, ac
->ac_f_ex
.fe_start
)
680 ctf_integer(__u32
, result_group
, ac
->ac_f_ex
.fe_group
)
681 ctf_integer(int, result_len
, ac
->ac_f_ex
.fe_len
)
682 ctf_integer(__u16
, found
, ac
->ac_found
)
683 ctf_integer(__u16
, groups
, ac
->ac_groups_scanned
)
684 ctf_integer(__u16
, buddy
, ac
->ac_buddy
)
685 ctf_integer(__u16
, flags
, ac
->ac_flags
)
686 ctf_integer(__u16
, tail
, ac
->ac_tail
)
687 ctf_integer(__u8
, cr
, ac
->ac_criteria
)
691 LTTNG_TRACEPOINT_EVENT(ext4_mballoc_prealloc
,
692 TP_PROTO(struct ext4_allocation_context
*ac
),
697 ctf_integer(dev_t
, dev
, ac
->ac_inode
->i_sb
->s_dev
)
698 ctf_integer(ino_t
, ino
, ac
->ac_inode
->i_ino
)
699 ctf_integer(__u32
, orig_logical
, ac
->ac_o_ex
.fe_logical
)
700 ctf_integer(int, orig_start
, ac
->ac_o_ex
.fe_start
)
701 ctf_integer(__u32
, orig_group
, ac
->ac_o_ex
.fe_group
)
702 ctf_integer(int, orig_len
, ac
->ac_o_ex
.fe_len
)
703 ctf_integer(__u32
, result_logical
, ac
->ac_b_ex
.fe_logical
)
704 ctf_integer(int, result_start
, ac
->ac_b_ex
.fe_start
)
705 ctf_integer(__u32
, result_group
, ac
->ac_b_ex
.fe_group
)
706 ctf_integer(int, result_len
, ac
->ac_b_ex
.fe_len
)
710 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__mballoc
,
711 TP_PROTO(struct super_block
*sb
,
717 TP_ARGS(sb
, inode
, group
, start
, len
),
720 ctf_integer(dev_t
, dev
, sb
->s_dev
)
721 ctf_integer(ino_t
, ino
, inode
? inode
->i_ino
: 0)
722 ctf_integer(int, result_start
, start
)
723 ctf_integer(__u32
, result_group
, group
)
724 ctf_integer(int, result_len
, len
)
728 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mballoc
, ext4_mballoc_discard
,
730 TP_PROTO(struct super_block
*sb
,
736 TP_ARGS(sb
, inode
, group
, start
, len
)
739 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mballoc
, ext4_mballoc_free
,
741 TP_PROTO(struct super_block
*sb
,
747 TP_ARGS(sb
, inode
, group
, start
, len
)
750 LTTNG_TRACEPOINT_EVENT(ext4_forget
,
751 TP_PROTO(struct inode
*inode
, int is_metadata
, __u64 block
),
753 TP_ARGS(inode
, is_metadata
, block
),
756 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
757 ctf_integer(ino_t
, ino
, inode
->i_ino
)
758 ctf_integer(__u64
, block
, block
)
759 ctf_integer(int, is_metadata
, is_metadata
)
760 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
764 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0))
765 LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space
,
766 TP_PROTO(struct inode
*inode
, int used_blocks
, int quota_claim
),
768 TP_ARGS(inode
, used_blocks
, quota_claim
),
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, used_blocks
, used_blocks
)
775 ctf_integer(int, reserved_data_blocks
,
776 EXT4_I(inode
)->i_reserved_data_blocks
)
777 ctf_integer(int, quota_claim
, quota_claim
)
778 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
781 #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0))
782 LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space
,
783 TP_PROTO(struct inode
*inode
, int used_blocks
, int quota_claim
),
785 TP_ARGS(inode
, used_blocks
, quota_claim
),
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, used_blocks
, used_blocks
)
792 ctf_integer(int, reserved_data_blocks
,
793 EXT4_I(inode
)->i_reserved_data_blocks
)
794 ctf_integer(int, reserved_meta_blocks
,
795 EXT4_I(inode
)->i_reserved_meta_blocks
)
796 ctf_integer(int, allocated_meta_blocks
,
797 EXT4_I(inode
)->i_allocated_meta_blocks
)
798 ctf_integer(int, quota_claim
, quota_claim
)
799 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
803 LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space
,
804 TP_PROTO(struct inode
*inode
, int used_blocks
),
806 TP_ARGS(inode
, used_blocks
),
809 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
810 ctf_integer(ino_t
, ino
, inode
->i_ino
)
811 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
812 ctf_integer(int, used_blocks
, used_blocks
)
813 ctf_integer(int, reserved_data_blocks
,
814 EXT4_I(inode
)->i_reserved_data_blocks
)
815 ctf_integer(int, reserved_meta_blocks
,
816 EXT4_I(inode
)->i_reserved_meta_blocks
)
817 ctf_integer(int, allocated_meta_blocks
,
818 EXT4_I(inode
)->i_allocated_meta_blocks
)
819 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
824 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0))
825 LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space
,
826 TP_PROTO(struct inode
*inode
),
831 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
832 ctf_integer(ino_t
, ino
, inode
->i_ino
)
833 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
834 ctf_integer(int, reserved_data_blocks
,
835 EXT4_I(inode
)->i_reserved_data_blocks
)
836 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
839 #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,2,0))
840 LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space
,
841 TP_PROTO(struct inode
*inode
),
846 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
847 ctf_integer(ino_t
, ino
, inode
->i_ino
)
848 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
849 ctf_integer(int, reserved_data_blocks
,
850 EXT4_I(inode
)->i_reserved_data_blocks
)
851 ctf_integer(int, reserved_meta_blocks
,
852 EXT4_I(inode
)->i_reserved_meta_blocks
)
853 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
857 LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space
,
858 TP_PROTO(struct inode
*inode
, int md_needed
),
860 TP_ARGS(inode
, md_needed
),
863 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
864 ctf_integer(ino_t
, ino
, inode
->i_ino
)
865 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
866 ctf_integer(int, md_needed
, md_needed
)
867 ctf_integer(int, reserved_data_blocks
,
868 EXT4_I(inode
)->i_reserved_data_blocks
)
869 ctf_integer(int, reserved_meta_blocks
,
870 EXT4_I(inode
)->i_reserved_meta_blocks
)
871 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
876 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0))
877 LTTNG_TRACEPOINT_EVENT(ext4_da_release_space
,
878 TP_PROTO(struct inode
*inode
, int freed_blocks
),
880 TP_ARGS(inode
, freed_blocks
),
883 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
884 ctf_integer(ino_t
, ino
, inode
->i_ino
)
885 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
886 ctf_integer(int, freed_blocks
, freed_blocks
)
887 ctf_integer(int, reserved_data_blocks
,
888 EXT4_I(inode
)->i_reserved_data_blocks
)
889 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
893 LTTNG_TRACEPOINT_EVENT(ext4_da_release_space
,
894 TP_PROTO(struct inode
*inode
, int freed_blocks
),
896 TP_ARGS(inode
, freed_blocks
),
899 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
900 ctf_integer(ino_t
, ino
, inode
->i_ino
)
901 ctf_integer(__u64
, i_blocks
, inode
->i_blocks
)
902 ctf_integer(int, freed_blocks
, freed_blocks
)
903 ctf_integer(int, reserved_data_blocks
,
904 EXT4_I(inode
)->i_reserved_data_blocks
)
905 ctf_integer(int, reserved_meta_blocks
,
906 EXT4_I(inode
)->i_reserved_meta_blocks
)
907 ctf_integer(int, allocated_meta_blocks
,
908 EXT4_I(inode
)->i_allocated_meta_blocks
)
909 ctf_integer(TP_MODE_T
, mode
, inode
->i_mode
)
914 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__bitmap_load
,
915 TP_PROTO(struct super_block
*sb
, unsigned long group
),
920 ctf_integer(dev_t
, dev
, sb
->s_dev
)
921 ctf_integer(__u32
, group
, group
)
925 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load
, ext4_mb_bitmap_load
,
927 TP_PROTO(struct super_block
*sb
, unsigned long group
),
932 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load
, ext4_mb_buddy_bitmap_load
,
934 TP_PROTO(struct super_block
*sb
, unsigned long group
),
939 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0))
940 LTTNG_TRACEPOINT_EVENT(ext4_read_block_bitmap_load
,
941 TP_PROTO(struct super_block
*sb
, unsigned long group
, bool prefetch
),
943 TP_ARGS(sb
, group
, prefetch
),
946 ctf_integer(dev_t
, dev
, sb
->s_dev
)
947 ctf_integer(__u32
, group
, group
)
948 ctf_integer(bool, prefetch
, prefetch
)
952 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load
, ext4_read_block_bitmap_load
,
954 TP_PROTO(struct super_block
*sb
, unsigned long group
),
960 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load
, ext4_load_inode_bitmap
,
962 TP_PROTO(struct super_block
*sb
, unsigned long group
),
967 LTTNG_TRACEPOINT_EVENT(ext4_direct_IO_enter
,
968 TP_PROTO(struct inode
*inode
, loff_t offset
, unsigned long len
, int rw
),
970 TP_ARGS(inode
, offset
, len
, rw
),
973 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
974 ctf_integer(ino_t
, ino
, inode
->i_ino
)
975 ctf_integer(loff_t
, pos
, offset
)
976 ctf_integer(unsigned long, len
, len
)
977 ctf_integer(int, rw
, rw
)
981 LTTNG_TRACEPOINT_EVENT(ext4_direct_IO_exit
,
982 TP_PROTO(struct inode
*inode
, loff_t offset
, unsigned long len
,
985 TP_ARGS(inode
, offset
, len
, rw
, ret
),
988 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
989 ctf_integer(ino_t
, ino
, inode
->i_ino
)
990 ctf_integer(loff_t
, pos
, offset
)
991 ctf_integer(unsigned long, len
, len
)
992 ctf_integer(int, rw
, rw
)
993 ctf_integer(int, ret
, ret
)
997 LTTNG_TRACEPOINT_EVENT(ext4_fallocate_exit
,
998 TP_PROTO(struct inode
*inode
, loff_t offset
,
999 unsigned int max_blocks
, int ret
),
1001 TP_ARGS(inode
, offset
, max_blocks
, ret
),
1004 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1005 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1006 ctf_integer(loff_t
, pos
, offset
)
1007 ctf_integer(unsigned int, blocks
, max_blocks
)
1008 ctf_integer(int, ret
, ret
)
1012 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,15,0))
1014 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__fallocate_mode
,
1015 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
, int mode
),
1017 TP_ARGS(inode
, offset
, len
, mode
),
1020 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1021 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1022 ctf_integer(loff_t
, pos
, offset
)
1023 ctf_integer(loff_t
, len
, len
)
1024 ctf_integer(int, mode
, mode
)
1028 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode
, ext4_fallocate_enter
,
1030 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
, int mode
),
1032 TP_ARGS(inode
, offset
, len
, mode
)
1035 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode
, ext4_punch_hole
,
1037 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
, int mode
),
1039 TP_ARGS(inode
, offset
, len
, mode
)
1042 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode
, ext4_zero_range
,
1044 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
, int mode
),
1046 TP_ARGS(inode
, offset
, len
, mode
)
1049 #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,15,0)) */
1051 LTTNG_TRACEPOINT_EVENT(ext4_fallocate_enter
,
1052 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
, int mode
),
1054 TP_ARGS(inode
, offset
, len
, mode
),
1057 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1058 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1059 ctf_integer(loff_t
, pos
, offset
)
1060 ctf_integer(loff_t
, len
, len
)
1061 ctf_integer(int, mode
, mode
)
1065 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
1067 LTTNG_TRACEPOINT_EVENT(ext4_punch_hole
,
1068 TP_PROTO(struct inode
*inode
, loff_t offset
, loff_t len
),
1070 TP_ARGS(inode
, offset
, len
),
1073 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1074 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1075 ctf_integer(loff_t
, pos
, offset
)
1076 ctf_integer(loff_t
, len
, len
)
1080 #endif /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) */
1082 #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,15,0)) */
1084 LTTNG_TRACEPOINT_EVENT(ext4_unlink_enter
,
1085 TP_PROTO(struct inode
*parent
, struct dentry
*dentry
),
1087 TP_ARGS(parent
, dentry
),
1090 ctf_integer(dev_t
, dev
, dentry
->d_inode
->i_sb
->s_dev
)
1091 ctf_integer(ino_t
, ino
, dentry
->d_inode
->i_ino
)
1092 ctf_integer(ino_t
, parent
, parent
->i_ino
)
1093 ctf_integer(loff_t
, size
, dentry
->d_inode
->i_size
)
1097 LTTNG_TRACEPOINT_EVENT(ext4_unlink_exit
,
1098 TP_PROTO(struct dentry
*dentry
, int ret
),
1100 TP_ARGS(dentry
, ret
),
1103 ctf_integer(dev_t
, dev
, dentry
->d_inode
->i_sb
->s_dev
)
1104 ctf_integer(ino_t
, ino
, dentry
->d_inode
->i_ino
)
1105 ctf_integer(int, ret
, ret
)
1109 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__truncate
,
1110 TP_PROTO(struct inode
*inode
),
1115 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1116 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1117 ctf_integer(unsigned int, blocks
, inode
->i_blocks
)
1121 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__truncate
, ext4_truncate_enter
,
1123 TP_PROTO(struct inode
*inode
),
1128 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__truncate
, ext4_truncate_exit
,
1130 TP_PROTO(struct inode
*inode
),
1135 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0))
1136 /* 'ux' is the uninitialized extent. */
1137 LTTNG_TRACEPOINT_EVENT(ext4_ext_convert_to_initialized_enter
,
1138 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
,
1139 struct ext4_extent
*ux
),
1141 TP_ARGS(inode
, map
, ux
),
1144 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1145 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1146 ctf_integer(ext4_lblk_t
, m_lblk
, map
->m_lblk
)
1147 ctf_integer(unsigned, m_len
, map
->m_len
)
1148 ctf_integer(ext4_lblk_t
, u_lblk
, le32_to_cpu(ux
->ee_block
))
1149 ctf_integer(unsigned, u_len
, ext4_ext_get_actual_len(ux
))
1150 ctf_integer(ext4_fsblk_t
, u_pblk
, ext4_ext_pblock(ux
))
1155 * 'ux' is the uninitialized extent.
1156 * 'ix' is the initialized extent to which blocks are transferred.
1158 LTTNG_TRACEPOINT_EVENT(ext4_ext_convert_to_initialized_fastpath
,
1159 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
,
1160 struct ext4_extent
*ux
, struct ext4_extent
*ix
),
1162 TP_ARGS(inode
, map
, ux
, ix
),
1165 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1166 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1167 ctf_integer(ext4_lblk_t
, m_lblk
, map
->m_lblk
)
1168 ctf_integer(unsigned, m_len
, map
->m_len
)
1169 ctf_integer(ext4_lblk_t
, u_lblk
, le32_to_cpu(ux
->ee_block
))
1170 ctf_integer(unsigned, u_len
, ext4_ext_get_actual_len(ux
))
1171 ctf_integer(ext4_fsblk_t
, u_pblk
, ext4_ext_pblock(ux
))
1172 ctf_integer(ext4_lblk_t
, i_lblk
, le32_to_cpu(ix
->ee_block
))
1173 ctf_integer(unsigned, i_len
, ext4_ext_get_actual_len(ix
))
1174 ctf_integer(ext4_fsblk_t
, i_pblk
, ext4_ext_pblock(ix
))
1179 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_enter
,
1180 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1181 unsigned int len
, unsigned int flags
),
1183 TP_ARGS(inode
, lblk
, len
, flags
),
1186 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1187 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1188 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1189 ctf_integer(unsigned int, len
, len
)
1190 ctf_integer(unsigned int, flags
, flags
)
1194 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_enter
, ext4_ext_map_blocks_enter
,
1195 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1196 unsigned len
, unsigned flags
),
1198 TP_ARGS(inode
, lblk
, len
, flags
)
1201 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_enter
, ext4_ind_map_blocks_enter
,
1202 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1203 unsigned len
, unsigned flags
),
1205 TP_ARGS(inode
, lblk
, len
, flags
)
1208 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
1210 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit
,
1211 TP_PROTO(struct inode
*inode
, unsigned flags
, struct ext4_map_blocks
*map
,
1214 TP_ARGS(inode
, flags
, map
, ret
),
1217 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1218 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1219 ctf_integer(unsigned int, flags
, flags
)
1220 ctf_integer(ext4_fsblk_t
, pblk
, map
->m_pblk
)
1221 ctf_integer(ext4_lblk_t
, lblk
, map
->m_lblk
)
1222 ctf_integer(unsigned int, len
, map
->m_len
)
1223 ctf_integer(unsigned int, mflags
, map
->m_flags
)
1224 ctf_integer(int, ret
, ret
)
1228 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ext_map_blocks_exit
,
1229 TP_PROTO(struct inode
*inode
, unsigned flags
,
1230 struct ext4_map_blocks
*map
, int ret
),
1232 TP_ARGS(inode
, flags
, map
, ret
)
1235 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ind_map_blocks_exit
,
1236 TP_PROTO(struct inode
*inode
, unsigned flags
,
1237 struct ext4_map_blocks
*map
, int ret
),
1239 TP_ARGS(inode
, flags
, map
, ret
)
1242 #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0))
1244 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit
,
1245 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
, int ret
),
1247 TP_ARGS(inode
, map
, ret
),
1250 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1251 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1252 ctf_integer(ext4_fsblk_t
, pblk
, map
->m_pblk
)
1253 ctf_integer(ext4_lblk_t
, lblk
, map
->m_lblk
)
1254 ctf_integer(unsigned int, len
, map
->m_len
)
1255 ctf_integer(unsigned int, mflags
, map
->m_flags
)
1256 ctf_integer(int, ret
, ret
)
1260 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ext_map_blocks_exit
,
1261 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
, int ret
),
1263 TP_ARGS(inode
, map
, ret
)
1266 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ind_map_blocks_exit
,
1267 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
, int ret
),
1269 TP_ARGS(inode
, map
, ret
)
1272 #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */
1274 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit
,
1275 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1276 ext4_fsblk_t pblk
, unsigned int len
, int ret
),
1278 TP_ARGS(inode
, lblk
, pblk
, len
, ret
),
1281 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1282 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1283 ctf_integer(ext4_fsblk_t
, pblk
, pblk
)
1284 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1285 ctf_integer(unsigned int, len
, len
)
1286 ctf_integer(int, ret
, ret
)
1290 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ext_map_blocks_exit
,
1291 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1292 ext4_fsblk_t pblk
, unsigned len
, int ret
),
1294 TP_ARGS(inode
, lblk
, pblk
, len
, ret
)
1297 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit
, ext4_ind_map_blocks_exit
,
1298 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
,
1299 ext4_fsblk_t pblk
, unsigned len
, int ret
),
1301 TP_ARGS(inode
, lblk
, pblk
, len
, ret
)
1304 #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */
1306 LTTNG_TRACEPOINT_EVENT(ext4_ext_load_extent
,
1307 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, ext4_fsblk_t pblk
),
1309 TP_ARGS(inode
, lblk
, pblk
),
1312 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1313 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1314 ctf_integer(ext4_fsblk_t
, pblk
, pblk
)
1315 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1319 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,10,0))
1320 LTTNG_TRACEPOINT_EVENT(ext4_load_inode
,
1321 TP_PROTO(struct super_block
*sb
, unsigned long ino
),
1326 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1327 ctf_integer(ino_t
, ino
, ino
)
1331 LTTNG_TRACEPOINT_EVENT(ext4_load_inode
,
1332 TP_PROTO(struct inode
*inode
),
1337 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1338 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1343 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,5,0))
1345 LTTNG_TRACEPOINT_EVENT(ext4_journal_start
,
1346 TP_PROTO(struct super_block
*sb
, int blocks
, int rsv_blocks
,
1347 int revoke_creds
, unsigned long IP
),
1349 TP_ARGS(sb
, blocks
, rsv_blocks
, revoke_creds
, IP
),
1352 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1353 ctf_integer_hex(unsigned long, ip
, IP
)
1354 ctf_integer(int, blocks
, blocks
)
1355 ctf_integer(int, rsv_blocks
, rsv_blocks
)
1356 ctf_integer(int, revoke_creds
, revoke_creds
)
1360 LTTNG_TRACEPOINT_EVENT(ext4_journal_start_reserved
,
1361 TP_PROTO(struct super_block
*sb
, int blocks
, unsigned long IP
),
1363 TP_ARGS(sb
, blocks
, IP
),
1366 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1367 ctf_integer_hex(unsigned long, ip
, IP
)
1368 ctf_integer(int, blocks
, blocks
)
1372 #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
1374 LTTNG_TRACEPOINT_EVENT(ext4_journal_start
,
1375 TP_PROTO(struct super_block
*sb
, int blocks
, int rsv_blocks
,
1378 TP_ARGS(sb
, blocks
, rsv_blocks
, IP
),
1381 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1382 ctf_integer_hex(unsigned long, ip
, IP
)
1383 ctf_integer(int, blocks
, blocks
)
1384 ctf_integer(int, rsv_blocks
, rsv_blocks
)
1388 LTTNG_TRACEPOINT_EVENT(ext4_journal_start_reserved
,
1389 TP_PROTO(struct super_block
*sb
, int blocks
, unsigned long IP
),
1391 TP_ARGS(sb
, blocks
, IP
),
1394 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1395 ctf_integer_hex(unsigned long, ip
, IP
)
1396 ctf_integer(int, blocks
, blocks
)
1400 #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,1,0))
1402 LTTNG_TRACEPOINT_EVENT(ext4_journal_start
,
1403 TP_PROTO(struct super_block
*sb
, int nblocks
, unsigned long IP
),
1405 TP_ARGS(sb
, nblocks
, IP
),
1408 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1409 ctf_integer_hex(unsigned long, ip
, IP
)
1410 ctf_integer(int, nblocks
, nblocks
)
1414 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__trim
,
1415 TP_PROTO(struct super_block
*sb
,
1417 ext4_grpblk_t start
,
1420 TP_ARGS(sb
, group
, start
, len
),
1423 ctf_integer(int, dev_major
, MAJOR(sb
->s_dev
))
1424 ctf_integer(int, dev_minor
, MINOR(sb
->s_dev
))
1425 ctf_integer(__u32
, group
, group
)
1426 ctf_integer(int, start
, start
)
1427 ctf_integer(int, len
, len
)
1431 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__trim
, ext4_trim_extent
,
1433 TP_PROTO(struct super_block
*sb
,
1435 ext4_grpblk_t start
,
1438 TP_ARGS(sb
, group
, start
, len
)
1441 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__trim
, ext4_trim_all_free
,
1443 TP_PROTO(struct super_block
*sb
,
1445 ext4_grpblk_t start
,
1448 TP_ARGS(sb
, group
, start
, len
)
1452 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0))
1454 LTTNG_TRACEPOINT_EVENT(ext4_ext_handle_uninitialized_extents
,
1455 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0))
1456 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
, int flags
,
1457 unsigned int allocated
, ext4_fsblk_t newblock
),
1459 TP_ARGS(inode
, map
, flags
, allocated
, newblock
),
1460 #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */
1461 TP_PROTO(struct inode
*inode
, struct ext4_map_blocks
*map
,
1462 unsigned int allocated
, ext4_fsblk_t newblock
),
1464 TP_ARGS(inode
, map
, allocated
, newblock
),
1465 #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */
1468 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1469 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1470 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0))
1471 ctf_integer(int, flags
, flags
)
1472 #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */
1473 ctf_integer(int, flags
, map
->m_flags
)
1474 #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */
1475 ctf_integer(ext4_lblk_t
, lblk
, map
->m_lblk
)
1476 ctf_integer(ext4_fsblk_t
, pblk
, map
->m_pblk
)
1477 ctf_integer(unsigned int, len
, map
->m_len
)
1478 ctf_integer(unsigned int, allocated
, allocated
)
1479 ctf_integer(ext4_fsblk_t
, newblk
, newblock
)
1483 LTTNG_TRACEPOINT_EVENT(ext4_get_implied_cluster_alloc_exit
,
1484 TP_PROTO(struct super_block
*sb
, struct ext4_map_blocks
*map
, int ret
),
1486 TP_ARGS(sb
, map
, ret
),
1489 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1490 ctf_integer(unsigned int, flags
, map
->m_flags
)
1491 ctf_integer(ext4_lblk_t
, lblk
, map
->m_lblk
)
1492 ctf_integer(ext4_fsblk_t
, pblk
, map
->m_pblk
)
1493 ctf_integer(unsigned int, len
, map
->m_len
)
1494 ctf_integer(int, ret
, ret
)
1498 LTTNG_TRACEPOINT_EVENT(ext4_ext_put_in_cache
,
1499 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, unsigned int len
,
1500 ext4_fsblk_t start
),
1502 TP_ARGS(inode
, lblk
, len
, start
),
1505 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1506 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1507 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1508 ctf_integer(unsigned int, len
, len
)
1509 ctf_integer(ext4_fsblk_t
, start
, start
)
1513 LTTNG_TRACEPOINT_EVENT(ext4_ext_in_cache
,
1514 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, int ret
),
1516 TP_ARGS(inode
, lblk
, ret
),
1519 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1520 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1521 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1522 ctf_integer(int, ret
, ret
)
1526 LTTNG_TRACEPOINT_EVENT(ext4_find_delalloc_range
,
1527 TP_PROTO(struct inode
*inode
, ext4_lblk_t from
, ext4_lblk_t to
,
1528 int reverse
, int found
, ext4_lblk_t found_blk
),
1530 TP_ARGS(inode
, from
, to
, reverse
, found
, found_blk
),
1533 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1534 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1535 ctf_integer(ext4_lblk_t
, from
, from
)
1536 ctf_integer(ext4_lblk_t
, to
, to
)
1537 ctf_integer(int, reverse
, reverse
)
1538 ctf_integer(int, found
, found
)
1539 ctf_integer(ext4_lblk_t
, found_blk
, found_blk
)
1543 LTTNG_TRACEPOINT_EVENT(ext4_get_reserved_cluster_alloc
,
1544 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, unsigned int len
),
1546 TP_ARGS(inode
, lblk
, len
),
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
, lblk
, lblk
)
1552 ctf_integer(unsigned int, len
, len
)
1556 LTTNG_TRACEPOINT_EVENT(ext4_ext_show_extent
,
1557 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, ext4_fsblk_t pblk
,
1558 unsigned short len
),
1560 TP_ARGS(inode
, lblk
, pblk
, len
),
1563 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1564 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1565 ctf_integer(ext4_fsblk_t
, pblk
, pblk
)
1566 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1567 ctf_integer(unsigned short, len
, len
)
1571 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \
1572 LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0))
1574 LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks
,
1575 TP_PROTO(struct inode
*inode
, struct ext4_extent
*ex
,
1576 ext4_lblk_t from
, ext4_fsblk_t to
,
1577 struct partial_cluster
*pc
),
1579 TP_ARGS(inode
, ex
, from
, to
, pc
),
1582 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1583 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1584 ctf_integer(ext4_lblk_t
, from
, from
)
1585 ctf_integer(ext4_lblk_t
, to
, to
)
1586 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1587 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1588 ctf_integer(unsigned short, ee_len
, ext4_ext_get_actual_len(ex
))
1589 ctf_integer(ext4_fsblk_t
, pc_pclu
, pc
->pclu
)
1590 ctf_integer(ext4_lblk_t
, pc_lblk
, pc
->lblk
)
1591 ctf_integer(int, pc_state
, pc
->state
)
1595 #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
1597 LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks
,
1598 TP_PROTO(struct inode
*inode
, struct ext4_extent
*ex
,
1599 ext4_lblk_t from
, ext4_fsblk_t to
,
1600 long long partial_cluster
),
1602 TP_ARGS(inode
, ex
, from
, to
, partial_cluster
),
1605 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1606 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1607 ctf_integer(ext4_lblk_t
, from
, from
)
1608 ctf_integer(ext4_lblk_t
, to
, to
)
1609 ctf_integer(long long, partial
, partial_cluster
)
1610 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1611 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1612 ctf_integer(unsigned short, ee_len
, ext4_ext_get_actual_len(ex
))
1618 LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks
,
1619 TP_PROTO(struct inode
*inode
, struct ext4_extent
*ex
,
1620 ext4_lblk_t from
, ext4_fsblk_t to
,
1621 ext4_fsblk_t partial_cluster
),
1623 TP_ARGS(inode
, ex
, from
, to
, partial_cluster
),
1626 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1627 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1628 ctf_integer(ext4_lblk_t
, from
, from
)
1629 ctf_integer(ext4_lblk_t
, to
, to
)
1630 ctf_integer(ext4_fsblk_t
, partial
, partial_cluster
)
1631 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1632 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1633 ctf_integer(unsigned short, ee_len
, ext4_ext_get_actual_len(ex
))
1639 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \
1640 LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0))
1642 LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf
,
1643 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
,
1644 struct ext4_extent
*ex
,
1645 struct partial_cluster
*pc
),
1647 TP_ARGS(inode
, start
, ex
, pc
),
1650 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1651 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1652 ctf_integer(ext4_lblk_t
, start
, start
)
1653 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1654 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1655 ctf_integer(short, ee_len
, ext4_ext_get_actual_len(ex
))
1656 ctf_integer(ext4_fsblk_t
, pc_pclu
, pc
->pclu
)
1657 ctf_integer(ext4_lblk_t
, pc_lblk
, pc
->lblk
)
1658 ctf_integer(int, pc_state
, pc
->state
)
1662 #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
1664 LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf
,
1665 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
,
1666 struct ext4_extent
*ex
,
1667 long long partial_cluster
),
1669 TP_ARGS(inode
, start
, ex
, partial_cluster
),
1672 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1673 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1674 ctf_integer(long long, partial
, partial_cluster
)
1675 ctf_integer(ext4_lblk_t
, start
, start
)
1676 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1677 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1678 ctf_integer(short, ee_len
, ext4_ext_get_actual_len(ex
))
1684 LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf
,
1685 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
,
1686 struct ext4_extent
*ex
, ext4_fsblk_t partial_cluster
),
1688 TP_ARGS(inode
, start
, ex
, partial_cluster
),
1691 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1692 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1693 ctf_integer(long long, partial
, partial_cluster
)
1694 ctf_integer(ext4_lblk_t
, start
, start
)
1695 ctf_integer(ext4_lblk_t
, ee_lblk
, le32_to_cpu(ex
->ee_block
))
1696 ctf_integer(ext4_fsblk_t
, ee_pblk
, ext4_ext_pblock(ex
))
1697 ctf_integer(short, ee_len
, ext4_ext_get_actual_len(ex
))
1703 LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_idx
,
1704 TP_PROTO(struct inode
*inode
, ext4_fsblk_t pblk
),
1706 TP_ARGS(inode
, pblk
),
1709 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1710 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1711 ctf_integer(ext4_fsblk_t
, pblk
, pblk
)
1715 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
1717 LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space
,
1718 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
,
1719 ext4_lblk_t end
, int depth
),
1721 TP_ARGS(inode
, start
, end
, depth
),
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
)
1734 LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space
,
1735 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
, int depth
),
1737 TP_ARGS(inode
, start
, depth
),
1740 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1741 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1742 ctf_integer(ext4_lblk_t
, start
, start
)
1743 ctf_integer(int, depth
, depth
)
1749 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \
1750 LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0))
1752 LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done
,
1753 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
, ext4_lblk_t end
,
1754 int depth
, struct partial_cluster
*pc
, __le16 eh_entries
),
1756 TP_ARGS(inode
, start
, end
, depth
, pc
, eh_entries
),
1759 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1760 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1761 ctf_integer(ext4_lblk_t
, start
, start
)
1762 ctf_integer(ext4_lblk_t
, end
, end
)
1763 ctf_integer(int, depth
, depth
)
1764 ctf_integer(unsigned short, eh_entries
, le16_to_cpu(eh_entries
))
1765 ctf_integer(ext4_fsblk_t
, pc_pclu
, pc
->pclu
)
1766 ctf_integer(ext4_lblk_t
, pc_lblk
, pc
->lblk
)
1767 ctf_integer(int, pc_state
, pc
->state
)
1771 #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
1773 LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done
,
1774 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
, ext4_lblk_t end
,
1775 int depth
, long long partial
, __le16 eh_entries
),
1777 TP_ARGS(inode
, start
, end
, depth
, partial
, eh_entries
),
1780 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1781 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1782 ctf_integer(ext4_lblk_t
, start
, start
)
1783 ctf_integer(ext4_lblk_t
, end
, end
)
1784 ctf_integer(int, depth
, depth
)
1785 ctf_integer(long long, partial
, partial
)
1786 ctf_integer(unsigned short, eh_entries
, le16_to_cpu(eh_entries
))
1792 LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done
,
1793 TP_PROTO(struct inode
*inode
, ext4_lblk_t start
, int depth
,
1794 ext4_lblk_t partial
, unsigned short eh_entries
),
1796 TP_ARGS(inode
, start
, depth
, partial
, eh_entries
),
1799 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1800 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1801 ctf_integer(ext4_lblk_t
, start
, start
)
1802 ctf_integer(int, depth
, depth
)
1803 ctf_integer(ext4_lblk_t
, partial
, partial
)
1804 ctf_integer(unsigned short, eh_entries
, eh_entries
)
1812 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,12,0))
1814 LTTNG_TRACEPOINT_EVENT_CLASS(ext4__es_extent
,
1815 TP_PROTO(struct inode
*inode
, struct extent_status
*es
),
1820 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1821 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1822 ctf_integer(ext4_lblk_t
, lblk
, es
->es_lblk
)
1823 ctf_integer(ext4_lblk_t
, len
, es
->es_len
)
1824 ctf_integer(ext4_fsblk_t
, pblk
, ext4_es_pblock(es
))
1825 ctf_integer(char, status
, ext4_es_status(es
))
1829 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__es_extent
, ext4_es_insert_extent
,
1830 TP_PROTO(struct inode
*inode
, struct extent_status
*es
),
1835 LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__es_extent
, ext4_es_cache_extent
,
1836 TP_PROTO(struct inode
*inode
, struct extent_status
*es
),
1841 #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0))
1843 LTTNG_TRACEPOINT_EVENT(ext4_es_insert_extent
,
1844 TP_PROTO(struct inode
*inode
, struct extent_status
*es
),
1849 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1850 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1851 ctf_integer(ext4_lblk_t
, lblk
, es
->es_lblk
)
1852 ctf_integer(ext4_lblk_t
, len
, es
->es_len
)
1853 ctf_integer(ext4_fsblk_t
, pblk
, ext4_es_pblock(es
))
1854 ctf_integer(char, status
, ext4_es_status(es
) >> 60)
1858 LTTNG_TRACEPOINT_EVENT(ext4_es_remove_extent
,
1859 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
, ext4_lblk_t len
),
1861 TP_ARGS(inode
, lblk
, len
),
1864 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1865 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1866 ctf_integer(loff_t
, lblk
, lblk
)
1867 ctf_integer(loff_t
, len
, len
)
1871 LTTNG_TRACEPOINT_EVENT(ext4_es_find_delayed_extent_range_enter
,
1872 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
),
1874 TP_ARGS(inode
, lblk
),
1877 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1878 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1879 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1883 LTTNG_TRACEPOINT_EVENT(ext4_es_find_delayed_extent_range_exit
,
1884 TP_PROTO(struct inode
*inode
, struct extent_status
*es
),
1889 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1890 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1891 ctf_integer(ext4_lblk_t
, lblk
, es
->es_lblk
)
1892 ctf_integer(ext4_lblk_t
, len
, es
->es_len
)
1893 ctf_integer(ext4_fsblk_t
, pblk
, ext4_es_pblock(es
))
1894 ctf_integer(char, status
, ext4_es_status(es
) >> 60)
1898 LTTNG_TRACEPOINT_EVENT(ext4_es_lookup_extent_enter
,
1899 TP_PROTO(struct inode
*inode
, ext4_lblk_t lblk
),
1901 TP_ARGS(inode
, lblk
),
1904 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1905 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1906 ctf_integer(ext4_lblk_t
, lblk
, lblk
)
1910 LTTNG_TRACEPOINT_EVENT(ext4_es_lookup_extent_exit
,
1911 TP_PROTO(struct inode
*inode
, struct extent_status
*es
,
1914 TP_ARGS(inode
, es
, found
),
1917 ctf_integer(dev_t
, dev
, inode
->i_sb
->s_dev
)
1918 ctf_integer(ino_t
, ino
, inode
->i_ino
)
1919 ctf_integer(ext4_lblk_t
, lblk
, es
->es_lblk
)
1920 ctf_integer(ext4_lblk_t
, len
, es
->es_len
)
1921 ctf_integer(ext4_fsblk_t
, pblk
, ext4_es_pblock(es
))
1922 ctf_integer(char, status
, ext4_es_status(es
) >> 60)
1923 ctf_integer(int, found
, found
)
1927 LTTNG_TRACEPOINT_EVENT(ext4_es_shrink_enter
,
1928 TP_PROTO(struct super_block
*sb
, int nr_to_scan
, int cache_cnt
),
1930 TP_ARGS(sb
, nr_to_scan
, cache_cnt
),
1933 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1934 ctf_integer(int, nr_to_scan
, nr_to_scan
)
1935 ctf_integer(int, cache_cnt
, cache_cnt
)
1939 LTTNG_TRACEPOINT_EVENT(ext4_es_shrink_exit
,
1940 TP_PROTO(struct super_block
*sb
, int shrunk_nr
, int cache_cnt
),
1942 TP_ARGS(sb
, shrunk_nr
, cache_cnt
),
1945 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1946 ctf_integer(int, shrunk_nr
, shrunk_nr
)
1947 ctf_integer(int, cache_cnt
, cache_cnt
)
1953 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,10,0))
1954 LTTNG_TRACEPOINT_EVENT(ext4_fc_replay_scan
,
1955 TP_PROTO(struct super_block
*sb
, int error
, int off
),
1957 TP_ARGS(sb
, error
, off
),
1960 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1961 ctf_integer(int, error
, error
)
1962 ctf_integer(int, off
, off
)
1966 LTTNG_TRACEPOINT_EVENT(ext4_fc_replay
,
1967 TP_PROTO(struct super_block
*sb
, int tag
, int ino
, int priv1
, int priv2
),
1969 TP_ARGS(sb
, tag
, ino
, priv1
, priv2
),
1972 ctf_integer(dev_t
, dev
, sb
->s_dev
)
1973 ctf_integer(int, tag
, tag
)
1974 ctf_integer(int, ino
, ino
)
1975 ctf_integer(int, priv1
, priv1
)
1976 ctf_integer(int, priv2
, priv2
)
1981 #endif /* LTTNG_TRACE_EXT4_H */
1983 /* This part must be outside protection */
1984 #include <lttng/define_trace.h>