2 #define TRACE_SYSTEM btrfs
4 #if !defined(LTTNG_TRACE_BTRFS_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define LTTNG_TRACE_BTRFS_H
7 #include <probes/lttng-tracepoint-event.h>
8 #include <linux/writeback.h>
9 #include <linux/version.h>
11 #ifndef _TRACE_BTRFS_DEF_
12 #define _TRACE_BTRFS_DEF_
17 struct btrfs_ordered_extent
;
18 struct btrfs_delayed_ref_node
;
19 struct btrfs_delayed_tree_ref
;
20 struct btrfs_delayed_data_ref
;
21 struct btrfs_delayed_ref_head
;
22 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,5,0))
23 struct btrfs_block_group
;
24 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
25 struct btrfs_block_group_cache
;
27 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
28 struct btrfs_free_cluster
;
32 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0))
37 #define BTRFS_UUID_SIZE 16
39 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,0,0))
40 #define lttng_fs_info_fsid fs_info->fs_devices->fsid
42 #define lttng_fs_info_fsid fs_info->fsid
45 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0) || \
46 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
47 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
48 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
49 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
50 LTTNG_TRACEPOINT_EVENT(btrfs_transaction_commit
,
52 TP_PROTO(const struct btrfs_root
*root
),
57 ctf_integer(u64
, generation
, root
->fs_info
->generation
)
58 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
62 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__inode
,
64 TP_PROTO(const struct inode
*inode
),
69 ctf_integer(ino_t
, ino
, inode
->i_ino
)
70 ctf_integer(blkcnt_t
, blocks
, inode
->i_blocks
)
71 ctf_integer(u64
, disk_i_size
, BTRFS_I(inode
)->disk_i_size
)
72 ctf_integer(u64
, generation
, BTRFS_I(inode
)->generation
)
73 ctf_integer(u64
, last_trans
, BTRFS_I(inode
)->last_trans
)
74 ctf_integer(u64
, logged_trans
, BTRFS_I(inode
)->logged_trans
)
75 ctf_integer(u64
, root_objectid
,
76 BTRFS_I(inode
)->root
->root_key
.objectid
)
80 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__inode
, btrfs_inode_new
,
82 TP_PROTO(const struct inode
*inode
),
87 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__inode
, btrfs_inode_request
,
89 TP_PROTO(const struct inode
*inode
),
94 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__inode
, btrfs_inode_evict
,
96 TP_PROTO(const struct inode
*inode
),
101 LTTNG_TRACEPOINT_EVENT(btrfs_transaction_commit
,
103 TP_PROTO(struct btrfs_root
*root
),
108 ctf_integer(u64
, generation
, root
->fs_info
->generation
)
109 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
113 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__inode
,
115 TP_PROTO(struct inode
*inode
),
120 ctf_integer(ino_t
, ino
, inode
->i_ino
)
121 ctf_integer(blkcnt_t
, blocks
, inode
->i_blocks
)
122 ctf_integer(u64
, disk_i_size
, BTRFS_I(inode
)->disk_i_size
)
123 ctf_integer(u64
, generation
, BTRFS_I(inode
)->generation
)
124 ctf_integer(u64
, last_trans
, BTRFS_I(inode
)->last_trans
)
125 ctf_integer(u64
, logged_trans
, BTRFS_I(inode
)->logged_trans
)
126 ctf_integer(u64
, root_objectid
,
127 BTRFS_I(inode
)->root
->root_key
.objectid
)
131 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__inode
, btrfs_inode_new
,
133 TP_PROTO(struct inode
*inode
),
138 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__inode
, btrfs_inode_request
,
140 TP_PROTO(struct inode
*inode
),
145 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__inode
, btrfs_inode_evict
,
147 TP_PROTO(struct inode
*inode
),
153 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0))
155 LTTNG_TRACEPOINT_EVENT(btrfs_get_extent
,
157 TP_PROTO(const struct btrfs_root
*root
, const struct btrfs_inode
*inode
,
158 const struct extent_map
*map
),
160 TP_ARGS(root
, inode
, map
),
163 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
164 ctf_integer(u64
, ino
, btrfs_ino(inode
))
165 ctf_integer(u64
, start
, map
->start
)
166 ctf_integer(u64
, len
, map
->len
)
167 ctf_integer(u64
, orig_start
, map
->orig_start
)
168 ctf_integer(u64
, block_start
, map
->block_start
)
169 ctf_integer(u64
, block_len
, map
->block_len
)
170 ctf_integer(unsigned long, flags
, map
->flags
)
171 ctf_integer(int, refs
, refcount_read(&map
->refs
))
172 ctf_integer(unsigned int, compress_type
, map
->compress_type
)
176 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0))
178 LTTNG_TRACEPOINT_EVENT(btrfs_get_extent
,
180 TP_PROTO(struct btrfs_root
*root
, struct btrfs_inode
*inode
,
181 struct extent_map
*map
),
183 TP_ARGS(root
, inode
, map
),
186 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
187 ctf_integer(u64
, ino
, btrfs_ino(inode
))
188 ctf_integer(u64
, start
, map
->start
)
189 ctf_integer(u64
, len
, map
->len
)
190 ctf_integer(u64
, orig_start
, map
->orig_start
)
191 ctf_integer(u64
, block_start
, map
->block_start
)
192 ctf_integer(u64
, block_len
, map
->block_len
)
193 ctf_integer(unsigned long, flags
, map
->flags
)
194 ctf_integer(int, refs
, refcount_read(&map
->refs
))
195 ctf_integer(unsigned int, compress_type
, map
->compress_type
)
199 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0))
201 LTTNG_TRACEPOINT_EVENT(btrfs_get_extent
,
203 TP_PROTO(struct btrfs_root
*root
, struct btrfs_inode
*inode
,
204 struct extent_map
*map
),
206 TP_ARGS(root
, inode
, map
),
209 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
210 ctf_integer(u64
, ino
, btrfs_ino(inode
))
211 ctf_integer(u64
, start
, map
->start
)
212 ctf_integer(u64
, len
, map
->len
)
213 ctf_integer(u64
, orig_start
, map
->orig_start
)
214 ctf_integer(u64
, block_start
, map
->block_start
)
215 ctf_integer(u64
, block_len
, map
->block_len
)
216 ctf_integer(unsigned long, flags
, map
->flags
)
217 ctf_integer(int, refs
, atomic_read(&map
->refs
))
218 ctf_integer(unsigned int, compress_type
, map
->compress_type
)
222 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0))
224 LTTNG_TRACEPOINT_EVENT(btrfs_get_extent
,
226 TP_PROTO(struct btrfs_root
*root
, struct inode
*inode
,
227 struct extent_map
*map
),
229 TP_ARGS(root
, inode
, map
),
232 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
233 ctf_integer(u64
, ino
, btrfs_ino(inode
))
234 ctf_integer(u64
, start
, map
->start
)
235 ctf_integer(u64
, len
, map
->len
)
236 ctf_integer(u64
, orig_start
, map
->orig_start
)
237 ctf_integer(u64
, block_start
, map
->block_start
)
238 ctf_integer(u64
, block_len
, map
->block_len
)
239 ctf_integer(unsigned long, flags
, map
->flags
)
240 ctf_integer(int, refs
, atomic_read(&map
->refs
))
241 ctf_integer(unsigned int, compress_type
, map
->compress_type
)
245 #elif (LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
246 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
247 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
248 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
250 LTTNG_TRACEPOINT_EVENT(btrfs_get_extent
,
252 TP_PROTO(const struct btrfs_root
*root
, const struct extent_map
*map
),
257 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
258 ctf_integer(u64
, start
, map
->start
)
259 ctf_integer(u64
, len
, map
->len
)
260 ctf_integer(u64
, orig_start
, map
->orig_start
)
261 ctf_integer(u64
, block_start
, map
->block_start
)
262 ctf_integer(u64
, block_len
, map
->block_len
)
263 ctf_integer(unsigned long, flags
, map
->flags
)
264 ctf_integer(int, refs
, atomic_read(&map
->refs
))
265 ctf_integer(unsigned int, compress_type
, map
->compress_type
)
269 #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) */
271 LTTNG_TRACEPOINT_EVENT(btrfs_get_extent
,
273 TP_PROTO(struct btrfs_root
*root
, struct extent_map
*map
),
278 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
279 ctf_integer(u64
, start
, map
->start
)
280 ctf_integer(u64
, len
, map
->len
)
281 ctf_integer(u64
, orig_start
, map
->orig_start
)
282 ctf_integer(u64
, block_start
, map
->block_start
)
283 ctf_integer(u64
, block_len
, map
->block_len
)
284 ctf_integer(unsigned long, flags
, map
->flags
)
285 ctf_integer(int, refs
, atomic_read(&map
->refs
))
286 ctf_integer(unsigned int, compress_type
, map
->compress_type
)
290 #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) */
292 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,17,0))
293 LTTNG_TRACEPOINT_EVENT(btrfs_handle_em_exist
,
295 TP_PROTO(const struct extent_map
*existing
, const struct extent_map
*map
, u64 start
, u64 len
),
297 TP_ARGS(existing
, map
, start
, len
),
300 ctf_integer(u64
, e_start
, existing
->start
)
301 ctf_integer(u64
, e_len
, existing
->len
)
302 ctf_integer(u64
, map_start
, map
->start
)
303 ctf_integer(u64
, map_len
, map
->len
)
304 ctf_integer(u64
, start
, start
)
305 ctf_integer(u64
, len
, len
)
310 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0))
311 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__ordered_extent
,
313 TP_PROTO(const struct inode
*inode
,
314 const struct btrfs_ordered_extent
*ordered
),
316 TP_ARGS(inode
, ordered
),
319 ctf_integer(ino_t
, ino
, inode
->i_ino
)
320 ctf_integer(u64
, file_offset
, ordered
->file_offset
)
321 ctf_integer(u64
, start
, ordered
->start
)
322 ctf_integer(u64
, len
, ordered
->len
)
323 ctf_integer(u64
, disk_len
, ordered
->disk_len
)
324 ctf_integer(u64
, bytes_left
, ordered
->bytes_left
)
325 ctf_integer(unsigned long, flags
, ordered
->flags
)
326 ctf_integer(int, compress_type
, ordered
->compress_type
)
327 ctf_integer(int, refs
, refcount_read(&ordered
->refs
))
328 ctf_integer(u64
, root_objectid
,
329 BTRFS_I(inode
)->root
->root_key
.objectid
)
332 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0))
333 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__ordered_extent
,
335 TP_PROTO(struct inode
*inode
, struct btrfs_ordered_extent
*ordered
),
337 TP_ARGS(inode
, ordered
),
340 ctf_integer(ino_t
, ino
, inode
->i_ino
)
341 ctf_integer(u64
, file_offset
, ordered
->file_offset
)
342 ctf_integer(u64
, start
, ordered
->start
)
343 ctf_integer(u64
, len
, ordered
->len
)
344 ctf_integer(u64
, disk_len
, ordered
->disk_len
)
345 ctf_integer(u64
, bytes_left
, ordered
->bytes_left
)
346 ctf_integer(unsigned long, flags
, ordered
->flags
)
347 ctf_integer(int, compress_type
, ordered
->compress_type
)
348 ctf_integer(int, refs
, refcount_read(&ordered
->refs
))
349 ctf_integer(u64
, root_objectid
,
350 BTRFS_I(inode
)->root
->root_key
.objectid
)
353 #elif (LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
354 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
355 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
356 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
357 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__ordered_extent
,
359 TP_PROTO(const struct inode
*inode
, const struct btrfs_ordered_extent
*ordered
),
361 TP_ARGS(inode
, ordered
),
364 ctf_integer(ino_t
, ino
, inode
->i_ino
)
365 ctf_integer(u64
, file_offset
, ordered
->file_offset
)
366 ctf_integer(u64
, start
, ordered
->start
)
367 ctf_integer(u64
, len
, ordered
->len
)
368 ctf_integer(u64
, disk_len
, ordered
->disk_len
)
369 ctf_integer(u64
, bytes_left
, ordered
->bytes_left
)
370 ctf_integer(unsigned long, flags
, ordered
->flags
)
371 ctf_integer(int, compress_type
, ordered
->compress_type
)
372 ctf_integer(int, refs
, atomic_read(&ordered
->refs
))
373 ctf_integer(u64
, root_objectid
,
374 BTRFS_I(inode
)->root
->root_key
.objectid
)
378 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__ordered_extent
,
380 TP_PROTO(struct inode
*inode
, struct btrfs_ordered_extent
*ordered
),
382 TP_ARGS(inode
, ordered
),
385 ctf_integer(ino_t
, ino
, inode
->i_ino
)
386 ctf_integer(u64
, file_offset
, ordered
->file_offset
)
387 ctf_integer(u64
, start
, ordered
->start
)
388 ctf_integer(u64
, len
, ordered
->len
)
389 ctf_integer(u64
, disk_len
, ordered
->disk_len
)
390 ctf_integer(u64
, bytes_left
, ordered
->bytes_left
)
391 ctf_integer(unsigned long, flags
, ordered
->flags
)
392 ctf_integer(int, compress_type
, ordered
->compress_type
)
393 ctf_integer(int, refs
, atomic_read(&ordered
->refs
))
394 ctf_integer(u64
, root_objectid
,
395 BTRFS_I(inode
)->root
->root_key
.objectid
)
400 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0) || \
401 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
402 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
403 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
404 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
405 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent
, btrfs_ordered_extent_add
,
407 TP_PROTO(const struct inode
*inode
,
408 const struct btrfs_ordered_extent
*ordered
),
410 TP_ARGS(inode
, ordered
)
413 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent
, btrfs_ordered_extent_remove
,
415 TP_PROTO(const struct inode
*inode
,
416 const struct btrfs_ordered_extent
*ordered
),
418 TP_ARGS(inode
, ordered
)
421 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent
, btrfs_ordered_extent_start
,
423 TP_PROTO(const struct inode
*inode
,
424 const struct btrfs_ordered_extent
*ordered
),
426 TP_ARGS(inode
, ordered
)
429 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent
, btrfs_ordered_extent_put
,
431 TP_PROTO(const struct inode
*inode
,
432 const struct btrfs_ordered_extent
*ordered
),
434 TP_ARGS(inode
, ordered
)
437 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__writepage
,
439 TP_PROTO(const struct page
*page
, const struct inode
*inode
,
440 const struct writeback_control
*wbc
),
442 TP_ARGS(page
, inode
, wbc
),
445 ctf_integer(ino_t
, ino
, inode
->i_ino
)
446 ctf_integer(pgoff_t
, index
, page
->index
)
447 ctf_integer(long, nr_to_write
, wbc
->nr_to_write
)
448 ctf_integer(long, pages_skipped
, wbc
->pages_skipped
)
449 ctf_integer(loff_t
, range_start
, wbc
->range_start
)
450 ctf_integer(loff_t
, range_end
, wbc
->range_end
)
451 ctf_integer(char, for_kupdate
, wbc
->for_kupdate
)
452 ctf_integer(char, for_reclaim
, wbc
->for_reclaim
)
453 ctf_integer(char, range_cyclic
, wbc
->range_cyclic
)
454 ctf_integer(pgoff_t
, writeback_index
,
455 inode
->i_mapping
->writeback_index
)
456 ctf_integer(u64
, root_objectid
,
457 BTRFS_I(inode
)->root
->root_key
.objectid
)
461 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs__writepage
,
465 btrfs__extent_writepage
,
467 TP_PROTO(const struct page
*page
, const struct inode
*inode
,
468 const struct writeback_control
*wbc
),
470 TP_ARGS(page
, inode
, wbc
)
473 LTTNG_TRACEPOINT_EVENT(btrfs_writepage_end_io_hook
,
475 TP_PROTO(const struct page
*page
, u64 start
, u64 end
, int uptodate
),
477 TP_ARGS(page
, start
, end
, uptodate
),
480 ctf_integer(ino_t
, ino
, page
->mapping
->host
->i_ino
)
481 ctf_integer(pgoff_t
, index
, page
->index
)
482 ctf_integer(u64
, start
, start
)
483 ctf_integer(u64
, end
, end
)
484 ctf_integer(int, uptodate
, uptodate
)
485 ctf_integer(u64
, root_objectid
,
486 BTRFS_I(page
->mapping
->host
)->root
->root_key
.objectid
)
490 LTTNG_TRACEPOINT_EVENT(btrfs_sync_file
,
492 TP_PROTO(const struct file
*file
, int datasync
),
494 TP_ARGS(file
, datasync
),
497 ctf_integer(ino_t
, ino
, file
->f_path
.dentry
->d_inode
->i_ino
)
498 ctf_integer(ino_t
, parent
, file
->f_path
.dentry
->d_parent
->d_inode
->i_ino
)
499 ctf_integer(int, datasync
, datasync
)
500 ctf_integer(u64
, root_objectid
,
501 BTRFS_I(file
->f_path
.dentry
->d_inode
)->root
->root_key
.objectid
)
505 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent
, btrfs_ordered_extent_add
,
507 TP_PROTO(struct inode
*inode
, struct btrfs_ordered_extent
*ordered
),
509 TP_ARGS(inode
, ordered
)
512 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent
, btrfs_ordered_extent_remove
,
514 TP_PROTO(struct inode
*inode
, struct btrfs_ordered_extent
*ordered
),
516 TP_ARGS(inode
, ordered
)
519 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent
, btrfs_ordered_extent_start
,
521 TP_PROTO(struct inode
*inode
, struct btrfs_ordered_extent
*ordered
),
523 TP_ARGS(inode
, ordered
)
526 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent
, btrfs_ordered_extent_put
,
528 TP_PROTO(struct inode
*inode
, struct btrfs_ordered_extent
*ordered
),
530 TP_ARGS(inode
, ordered
)
533 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__writepage
,
535 TP_PROTO(struct page
*page
, struct inode
*inode
,
536 struct writeback_control
*wbc
),
538 TP_ARGS(page
, inode
, wbc
),
541 ctf_integer(ino_t
, ino
, inode
->i_ino
)
542 ctf_integer(pgoff_t
, index
, page
->index
)
543 ctf_integer(long, nr_to_write
, wbc
->nr_to_write
)
544 ctf_integer(long, pages_skipped
, wbc
->pages_skipped
)
545 ctf_integer(loff_t
, range_start
, wbc
->range_start
)
546 ctf_integer(loff_t
, range_end
, wbc
->range_end
)
547 #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,1,0))
548 ctf_integer(char, nonblocking
, wbc
->nonblocking
)
550 ctf_integer(char, for_kupdate
, wbc
->for_kupdate
)
551 ctf_integer(char, for_reclaim
, wbc
->for_reclaim
)
552 ctf_integer(char, range_cyclic
, wbc
->range_cyclic
)
553 ctf_integer(pgoff_t
, writeback_index
,
554 inode
->i_mapping
->writeback_index
)
555 ctf_integer(u64
, root_objectid
,
556 BTRFS_I(inode
)->root
->root_key
.objectid
)
560 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs__writepage
,
564 btrfs__extent_writepage
,
566 TP_PROTO(struct page
*page
, struct inode
*inode
,
567 struct writeback_control
*wbc
),
569 TP_ARGS(page
, inode
, wbc
)
572 LTTNG_TRACEPOINT_EVENT(btrfs_writepage_end_io_hook
,
574 TP_PROTO(struct page
*page
, u64 start
, u64 end
, int uptodate
),
576 TP_ARGS(page
, start
, end
, uptodate
),
579 ctf_integer(ino_t
, ino
, page
->mapping
->host
->i_ino
)
580 ctf_integer(pgoff_t
, index
, page
->index
)
581 ctf_integer(u64
, start
, start
)
582 ctf_integer(u64
, end
, end
)
583 ctf_integer(int, uptodate
, uptodate
)
584 ctf_integer(u64
, root_objectid
,
585 BTRFS_I(page
->mapping
->host
)->root
->root_key
.objectid
)
589 LTTNG_TRACEPOINT_EVENT(btrfs_sync_file
,
591 TP_PROTO(struct file
*file
, int datasync
),
593 TP_ARGS(file
, datasync
),
596 ctf_integer(ino_t
, ino
, file
->f_path
.dentry
->d_inode
->i_ino
)
597 ctf_integer(ino_t
, parent
, file
->f_path
.dentry
->d_parent
->d_inode
->i_ino
)
598 ctf_integer(int, datasync
, datasync
)
599 ctf_integer(u64
, root_objectid
,
600 BTRFS_I(file
->f_path
.dentry
->d_inode
)->root
->root_key
.objectid
)
605 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0) || \
606 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
607 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
608 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
609 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,4,103,7,0,0) || \
610 LTTNG_SLE_KERNEL_RANGE(4,4,114,94,0,0, 4,4,114,95,0,0) || \
611 LTTNG_SLE_KERNEL_RANGE(4,4,120,94,0,0, 4,4,120,95,0,0) || \
612 LTTNG_SLE_KERNEL_RANGE(4,4,126,94,0,0, 4,5,0,0,0,0))
613 LTTNG_TRACEPOINT_EVENT(btrfs_sync_fs
,
615 TP_PROTO(const struct btrfs_fs_info
*fs_info
, int wait
),
617 TP_ARGS(fs_info
, wait
),
620 ctf_integer(int, wait
, wait
)
623 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0))
624 LTTNG_TRACEPOINT_EVENT(btrfs_sync_fs
,
626 TP_PROTO(struct btrfs_fs_info
*fs_info
, int wait
),
628 TP_ARGS(fs_info
, wait
),
631 ctf_integer(int, wait
, wait
)
635 LTTNG_TRACEPOINT_EVENT(btrfs_sync_fs
,
642 ctf_integer(int, wait
, wait
)
647 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,5,0))
648 LTTNG_TRACEPOINT_EVENT(btrfs_add_block_group
,
650 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
651 const struct btrfs_block_group
*block_group
, int create
),
653 TP_ARGS(fs_info
, block_group
, create
),
656 ctf_array(u8
, fsid
, lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
657 ctf_integer(u64
, offset
, block_group
->start
)
658 ctf_integer(u64
, size
, block_group
->length
)
659 ctf_integer(u64
, flags
, block_group
->flags
)
660 ctf_integer(u64
, bytes_used
, block_group
->used
)
661 ctf_integer(u64
, bytes_super
, block_group
->bytes_super
)
662 ctf_integer(int, create
, create
)
665 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0) || \
666 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
667 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
668 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
669 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
670 LTTNG_TRACEPOINT_EVENT(btrfs_add_block_group
,
672 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
673 const struct btrfs_block_group_cache
*block_group
, int create
),
675 TP_ARGS(fs_info
, block_group
, create
),
678 ctf_array(u8
, fsid
, lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
679 ctf_integer(u64
, offset
, block_group
->key
.objectid
)
680 ctf_integer(u64
, size
, block_group
->key
.offset
)
681 ctf_integer(u64
, flags
, block_group
->flags
)
682 ctf_integer(u64
, bytes_used
, btrfs_block_group_used(&block_group
->item
))
683 ctf_integer(u64
, bytes_super
, block_group
->bytes_super
)
684 ctf_integer(int, create
, create
)
688 LTTNG_TRACEPOINT_EVENT(btrfs_add_block_group
,
690 TP_PROTO(struct btrfs_fs_info
*fs_info
,
691 struct btrfs_block_group_cache
*block_group
, int create
),
693 TP_ARGS(fs_info
, block_group
, create
),
696 ctf_array(u8
, fsid
, lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
697 ctf_integer(u64
, offset
, block_group
->key
.objectid
)
698 ctf_integer(u64
, size
, block_group
->key
.offset
)
699 ctf_integer(u64
, flags
, block_group
->flags
)
700 ctf_integer(u64
, bytes_used
, btrfs_block_group_used(&block_group
->item
))
701 ctf_integer(u64
, bytes_super
, block_group
->bytes_super
)
702 ctf_integer(int, create
, create
)
707 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0))
708 LTTNG_TRACEPOINT_EVENT(btrfs_delayed_tree_ref
,
710 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
711 const struct btrfs_delayed_ref_node
*ref
,
712 const struct btrfs_delayed_tree_ref
*full_ref
,
715 TP_ARGS(fs_info
, ref
, full_ref
, action
),
718 ctf_integer(u64
, bytenr
, ref
->bytenr
)
719 ctf_integer(u64
, num_bytes
, ref
->num_bytes
)
720 ctf_integer(int, action
, action
)
721 ctf_integer(u64
, parent
, full_ref
->parent
)
722 ctf_integer(u64
, ref_root
, full_ref
->root
)
723 ctf_integer(int, level
, full_ref
->level
)
724 ctf_integer(int, type
, ref
->type
)
725 ctf_integer(u64
, seq
, ref
->seq
)
728 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0))
729 LTTNG_TRACEPOINT_EVENT(btrfs_delayed_tree_ref
,
731 TP_PROTO(struct btrfs_fs_info
*fs_info
,
732 struct btrfs_delayed_ref_node
*ref
,
733 struct btrfs_delayed_tree_ref
*full_ref
,
736 TP_ARGS(fs_info
, ref
, full_ref
, action
),
739 ctf_integer(u64
, bytenr
, ref
->bytenr
)
740 ctf_integer(u64
, num_bytes
, ref
->num_bytes
)
741 ctf_integer(int, action
, action
)
742 ctf_integer(u64
, parent
, full_ref
->parent
)
743 ctf_integer(u64
, ref_root
, full_ref
->root
)
744 ctf_integer(int, level
, full_ref
->level
)
745 ctf_integer(int, type
, ref
->type
)
746 ctf_integer(u64
, seq
, ref
->seq
)
750 LTTNG_TRACEPOINT_EVENT(btrfs_delayed_tree_ref
,
752 TP_PROTO(struct btrfs_delayed_ref_node
*ref
,
753 struct btrfs_delayed_tree_ref
*full_ref
,
756 TP_ARGS(ref
, full_ref
, action
),
759 ctf_integer(u64
, bytenr
, ref
->bytenr
)
760 ctf_integer(u64
, num_bytes
, ref
->num_bytes
)
761 ctf_integer(int, action
, action
)
762 ctf_integer(u64
, parent
, full_ref
->parent
)
763 ctf_integer(u64
, ref_root
, full_ref
->root
)
764 ctf_integer(int, level
, full_ref
->level
)
765 ctf_integer(int, type
, ref
->type
)
766 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,0))
767 ctf_integer(u64
, seq
, ref
->seq
)
773 LTTNG_TRACEPOINT_EVENT(btrfs_delayed_data_ref
,
775 TP_PROTO(struct btrfs_delayed_ref_node
*ref
,
776 struct btrfs_delayed_data_ref
*full_ref
,
779 TP_ARGS(ref
, full_ref
, action
),
782 ctf_integer(u64
, bytenr
, ref
->bytenr
)
783 ctf_integer(u64
, num_bytes
, ref
->num_bytes
)
784 ctf_integer(int, action
, action
)
785 ctf_integer(u64
, parent
, full_ref
->parent
)
786 ctf_integer(u64
, ref_root
, full_ref
->root
)
787 ctf_integer(u64
, owner
, full_ref
->objectid
)
788 ctf_integer(u64
, offset
, full_ref
->offset
)
789 ctf_integer(int, type
, ref
->type
)
790 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,0))
791 ctf_integer(u64
, seq
, ref
->seq
)
796 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0))
797 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs_delayed_ref_head
,
799 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
800 const struct btrfs_delayed_ref_head
*head_ref
,
803 TP_ARGS(fs_info
, head_ref
, action
),
806 ctf_integer(u64
, bytenr
, head_ref
->bytenr
)
807 ctf_integer(u64
, num_bytes
, head_ref
->num_bytes
)
808 ctf_integer(int, action
, action
)
809 ctf_integer(int, is_data
, head_ref
->is_data
)
813 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_ref_head
,
815 add_delayed_ref_head
,
817 btrfs_add_delayed_ref_head
,
819 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
820 const struct btrfs_delayed_ref_head
*head_ref
,
823 TP_ARGS(fs_info
, head_ref
, action
)
826 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_ref_head
,
828 run_delayed_ref_head
,
830 btrfs_run_delayed_ref_head
,
832 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
833 const struct btrfs_delayed_ref_head
*head_ref
,
836 TP_ARGS(fs_info
, head_ref
, action
)
839 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0) || \
840 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
841 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
842 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
843 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,4,103,7,0,0) || \
844 LTTNG_SLE_KERNEL_RANGE(4,4,114,94,0,0, 4,4,114,95,0,0) || \
845 LTTNG_SLE_KERNEL_RANGE(4,4,120,94,0,0, 4,4,120,95,0,0) || \
846 LTTNG_SLE_KERNEL_RANGE(4,4,126,94,0,0, 4,5,0,0,0,0))
848 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs_delayed_ref_head
,
850 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
851 const struct btrfs_delayed_ref_node
*ref
,
852 const struct btrfs_delayed_ref_head
*head_ref
,
855 TP_ARGS(fs_info
, ref
, head_ref
, action
),
858 ctf_integer(u64
, bytenr
, ref
->bytenr
)
859 ctf_integer(u64
, num_bytes
, ref
->num_bytes
)
860 ctf_integer(int, action
, action
)
861 ctf_integer(int, is_data
, head_ref
->is_data
)
865 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_ref_head
,
867 add_delayed_ref_head
,
869 btrfs_add_delayed_ref_head
,
871 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
872 const struct btrfs_delayed_ref_node
*ref
,
873 const struct btrfs_delayed_ref_head
*head_ref
,
876 TP_ARGS(fs_info
, ref
, head_ref
, action
)
879 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_ref_head
,
881 run_delayed_ref_head
,
883 btrfs_run_delayed_ref_head
,
885 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
886 const struct btrfs_delayed_ref_node
*ref
,
887 const struct btrfs_delayed_ref_head
*head_ref
,
890 TP_ARGS(fs_info
, ref
, head_ref
, action
)
893 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0))
894 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs_delayed_ref_head
,
896 TP_PROTO(struct btrfs_fs_info
*fs_info
,
897 struct btrfs_delayed_ref_node
*ref
,
898 struct btrfs_delayed_ref_head
*head_ref
,
901 TP_ARGS(fs_info
, ref
, head_ref
, action
),
904 ctf_integer(u64
, bytenr
, ref
->bytenr
)
905 ctf_integer(u64
, num_bytes
, ref
->num_bytes
)
906 ctf_integer(int, action
, action
)
907 ctf_integer(int, is_data
, head_ref
->is_data
)
911 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_ref_head
,
913 add_delayed_ref_head
,
915 btrfs_add_delayed_ref_head
,
917 TP_PROTO(struct btrfs_fs_info
*fs_info
,
918 struct btrfs_delayed_ref_node
*ref
,
919 struct btrfs_delayed_ref_head
*head_ref
,
922 TP_ARGS(fs_info
, ref
, head_ref
, action
)
925 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_ref_head
,
927 run_delayed_ref_head
,
929 btrfs_run_delayed_ref_head
,
931 TP_PROTO(struct btrfs_fs_info
*fs_info
,
932 struct btrfs_delayed_ref_node
*ref
,
933 struct btrfs_delayed_ref_head
*head_ref
,
936 TP_ARGS(fs_info
, ref
, head_ref
, action
)
939 #elif (LTTNG_SLE_KERNEL_RANGE(4,4,103,92,0,0, 4,5,0,0,0,0))
940 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs_delayed_ref_head
,
942 TP_PROTO(const struct btrfs_delayed_ref_node
*ref
,
943 const struct btrfs_delayed_ref_head
*head_ref
,
946 TP_ARGS(ref
, head_ref
, action
),
949 ctf_integer(u64
, bytenr
, ref
->bytenr
)
950 ctf_integer(u64
, num_bytes
, ref
->num_bytes
)
951 ctf_integer(int, action
, action
)
952 ctf_integer(int, is_data
, head_ref
->is_data
)
956 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_ref_head
,
958 add_delayed_ref_head
,
960 btrfs_add_delayed_ref_head
,
962 TP_PROTO(const struct btrfs_delayed_ref_node
*ref
,
963 const struct btrfs_delayed_ref_head
*head_ref
,
966 TP_ARGS(ref
, head_ref
, action
)
969 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_ref_head
,
971 run_delayed_ref_head
,
973 btrfs_run_delayed_ref_head
,
975 TP_PROTO(const struct btrfs_delayed_ref_node
*ref
,
976 const struct btrfs_delayed_ref_head
*head_ref
,
979 TP_ARGS(ref
, head_ref
, action
)
982 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0))
983 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs_delayed_ref_head
,
985 TP_PROTO(struct btrfs_delayed_ref_node
*ref
,
986 struct btrfs_delayed_ref_head
*head_ref
,
989 TP_ARGS(ref
, head_ref
, action
),
992 ctf_integer(u64
, bytenr
, ref
->bytenr
)
993 ctf_integer(u64
, num_bytes
, ref
->num_bytes
)
994 ctf_integer(int, action
, action
)
995 ctf_integer(int, is_data
, head_ref
->is_data
)
999 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_ref_head
,
1001 add_delayed_ref_head
,
1003 btrfs_add_delayed_ref_head
,
1005 TP_PROTO(struct btrfs_delayed_ref_node
*ref
,
1006 struct btrfs_delayed_ref_head
*head_ref
,
1009 TP_ARGS(ref
, head_ref
, action
)
1012 LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_ref_head
,
1014 run_delayed_ref_head
,
1016 btrfs_run_delayed_ref_head
,
1018 TP_PROTO(struct btrfs_delayed_ref_node
*ref
,
1019 struct btrfs_delayed_ref_head
*head_ref
,
1022 TP_ARGS(ref
, head_ref
, action
)
1026 LTTNG_TRACEPOINT_EVENT(btrfs_delayed_ref_head
,
1028 TP_PROTO(struct btrfs_delayed_ref_node
*ref
,
1029 struct btrfs_delayed_ref_head
*head_ref
,
1032 TP_ARGS(ref
, head_ref
, action
),
1035 ctf_integer(u64
, bytenr
, ref
->bytenr
)
1036 ctf_integer(u64
, num_bytes
, ref
->num_bytes
)
1037 ctf_integer(int, action
, action
)
1038 ctf_integer(int, is_data
, head_ref
->is_data
)
1043 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0))
1045 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__chunk
,
1047 TP_PROTO(const struct btrfs_fs_info
*fs_info
, const struct map_lookup
*map
,
1048 u64 offset
, u64 size
),
1050 TP_ARGS(fs_info
, map
, offset
, size
),
1053 ctf_integer(int, num_stripes
, map
->num_stripes
)
1054 ctf_integer(u64
, type
, map
->type
)
1055 ctf_integer(int, sub_stripes
, map
->sub_stripes
)
1056 ctf_integer(u64
, offset
, offset
)
1057 ctf_integer(u64
, size
, size
)
1058 ctf_integer(u64
, root_objectid
, fs_info
->chunk_root
->root_key
.objectid
)
1062 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk
, btrfs_chunk_alloc
,
1064 TP_PROTO(const struct btrfs_fs_info
*fs_info
, const struct map_lookup
*map
,
1065 u64 offset
, u64 size
),
1067 TP_ARGS(fs_info
, map
, offset
, size
)
1070 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk
, btrfs_chunk_free
,
1072 TP_PROTO(const struct btrfs_fs_info
*fs_info
, const struct map_lookup
*map
,
1073 u64 offset
, u64 size
),
1075 TP_ARGS(fs_info
, map
, offset
, size
)
1078 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0))
1080 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__chunk
,
1082 TP_PROTO(struct btrfs_fs_info
*fs_info
, struct map_lookup
*map
,
1083 u64 offset
, u64 size
),
1085 TP_ARGS(fs_info
, map
, offset
, size
),
1088 ctf_integer(int, num_stripes
, map
->num_stripes
)
1089 ctf_integer(u64
, type
, map
->type
)
1090 ctf_integer(int, sub_stripes
, map
->sub_stripes
)
1091 ctf_integer(u64
, offset
, offset
)
1092 ctf_integer(u64
, size
, size
)
1093 ctf_integer(u64
, root_objectid
, fs_info
->chunk_root
->root_key
.objectid
)
1097 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk
, btrfs_chunk_alloc
,
1099 TP_PROTO(struct btrfs_fs_info
*fs_info
, struct map_lookup
*map
,
1100 u64 offset
, u64 size
),
1102 TP_ARGS(fs_info
, map
, offset
, size
)
1105 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk
, btrfs_chunk_free
,
1107 TP_PROTO(struct btrfs_fs_info
*fs_info
, struct map_lookup
*map
,
1108 u64 offset
, u64 size
),
1110 TP_ARGS(fs_info
, map
, offset
, size
)
1113 #elif (LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
1114 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
1115 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
1116 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
1118 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__chunk
,
1120 TP_PROTO(const struct btrfs_root
*root
, const struct map_lookup
*map
,
1121 u64 offset
, u64 size
),
1123 TP_ARGS(root
, map
, offset
, size
),
1126 ctf_integer(int, num_stripes
, map
->num_stripes
)
1127 ctf_integer(u64
, type
, map
->type
)
1128 ctf_integer(int, sub_stripes
, map
->sub_stripes
)
1129 ctf_integer(u64
, offset
, offset
)
1130 ctf_integer(u64
, size
, size
)
1131 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
1135 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk
, btrfs_chunk_alloc
,
1137 TP_PROTO(const struct btrfs_root
*root
, const struct map_lookup
*map
,
1138 u64 offset
, u64 size
),
1140 TP_ARGS(root
, map
, offset
, size
)
1143 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk
, btrfs_chunk_free
,
1145 TP_PROTO(const struct btrfs_root
*root
, const struct map_lookup
*map
,
1146 u64 offset
, u64 size
),
1148 TP_ARGS(root
, map
, offset
, size
)
1151 #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) */
1153 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__chunk
,
1155 TP_PROTO(struct btrfs_root
*root
, struct map_lookup
*map
,
1156 u64 offset
, u64 size
),
1158 TP_ARGS(root
, map
, offset
, size
),
1161 ctf_integer(int, num_stripes
, map
->num_stripes
)
1162 ctf_integer(u64
, type
, map
->type
)
1163 ctf_integer(int, sub_stripes
, map
->sub_stripes
)
1164 ctf_integer(u64
, offset
, offset
)
1165 ctf_integer(u64
, size
, size
)
1166 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
1170 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk
, btrfs_chunk_alloc
,
1172 TP_PROTO(struct btrfs_root
*root
, struct map_lookup
*map
,
1173 u64 offset
, u64 size
),
1175 TP_ARGS(root
, map
, offset
, size
)
1178 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk
, btrfs_chunk_free
,
1180 TP_PROTO(struct btrfs_root
*root
, struct map_lookup
*map
,
1181 u64 offset
, u64 size
),
1183 TP_ARGS(root
, map
, offset
, size
)
1186 #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) */
1188 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0) || \
1189 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
1190 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
1191 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
1192 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
1193 LTTNG_TRACEPOINT_EVENT(btrfs_cow_block
,
1195 TP_PROTO(const struct btrfs_root
*root
, const struct extent_buffer
*buf
,
1196 const struct extent_buffer
*cow
),
1198 TP_ARGS(root
, buf
, cow
),
1201 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
1202 ctf_integer(u64
, buf_start
, buf
->start
)
1203 ctf_integer(int, refs
, atomic_read(&buf
->refs
))
1204 ctf_integer(u64
, cow_start
, cow
->start
)
1205 ctf_integer(int, buf_level
, btrfs_header_level(buf
))
1206 ctf_integer(int, cow_level
, btrfs_header_level(cow
))
1210 LTTNG_TRACEPOINT_EVENT(btrfs_cow_block
,
1212 TP_PROTO(struct btrfs_root
*root
, struct extent_buffer
*buf
,
1213 struct extent_buffer
*cow
),
1215 TP_ARGS(root
, buf
, cow
),
1218 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
1219 ctf_integer(u64
, buf_start
, buf
->start
)
1220 ctf_integer(int, refs
, atomic_read(&buf
->refs
))
1221 ctf_integer(u64
, cow_start
, cow
->start
)
1222 ctf_integer(int, buf_level
, btrfs_header_level(buf
))
1223 ctf_integer(int, cow_level
, btrfs_header_level(cow
))
1228 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0) || \
1229 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
1230 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
1231 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
1232 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
1233 LTTNG_TRACEPOINT_EVENT(btrfs_space_reservation
,
1235 TP_PROTO(const struct btrfs_fs_info
*fs_info
, char *type
, u64 val
,
1236 u64 bytes
, int reserve
),
1238 TP_ARGS(fs_info
, type
, val
, bytes
, reserve
),
1241 ctf_array(u8
, fsid
, lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
1242 ctf_string(type
, type
)
1243 ctf_integer(u64
, val
, val
)
1244 ctf_integer(u64
, bytes
, bytes
)
1245 ctf_integer(int, reserve
, reserve
)
1248 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
1249 LTTNG_TRACEPOINT_EVENT(btrfs_space_reservation
,
1251 TP_PROTO(struct btrfs_fs_info
*fs_info
, char *type
, u64 val
,
1252 u64 bytes
, int reserve
),
1254 TP_ARGS(fs_info
, type
, val
, bytes
, reserve
),
1257 ctf_array(u8
, fsid
, lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
1258 ctf_string(type
, type
)
1259 ctf_integer(u64
, val
, val
)
1260 ctf_integer(u64
, bytes
, bytes
)
1261 ctf_integer(int, reserve
, reserve
)
1266 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0))
1268 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserved_extent
,
1270 TP_PROTO(const struct btrfs_fs_info
*fs_info
, u64 start
, u64 len
),
1272 TP_ARGS(fs_info
, start
, len
),
1275 ctf_integer(u64
, start
, start
)
1276 ctf_integer(u64
, len
, len
)
1280 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent
, btrfs_reserved_extent_alloc
,
1282 TP_PROTO(const struct btrfs_fs_info
*fs_info
, u64 start
, u64 len
),
1284 TP_ARGS(fs_info
, start
, len
)
1287 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent
, btrfs_reserved_extent_free
,
1289 TP_PROTO(const struct btrfs_fs_info
*fs_info
, u64 start
, u64 len
),
1291 TP_ARGS(fs_info
, start
, len
)
1294 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0))
1296 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserved_extent
,
1298 TP_PROTO(struct btrfs_fs_info
*fs_info
, u64 start
, u64 len
),
1300 TP_ARGS(fs_info
, start
, len
),
1303 ctf_integer(u64
, start
, start
)
1304 ctf_integer(u64
, len
, len
)
1308 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent
, btrfs_reserved_extent_alloc
,
1310 TP_PROTO(struct btrfs_fs_info
*fs_info
, u64 start
, u64 len
),
1312 TP_ARGS(fs_info
, start
, len
)
1315 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent
, btrfs_reserved_extent_free
,
1317 TP_PROTO(struct btrfs_fs_info
*fs_info
, u64 start
, u64 len
),
1319 TP_ARGS(fs_info
, start
, len
)
1322 #elif (LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
1323 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
1324 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
1325 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
1327 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserved_extent
,
1329 TP_PROTO(const struct btrfs_root
*root
, u64 start
, u64 len
),
1331 TP_ARGS(root
, start
, len
),
1334 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
1335 ctf_integer(u64
, start
, start
)
1336 ctf_integer(u64
, len
, len
)
1340 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent
, btrfs_reserved_extent_alloc
,
1342 TP_PROTO(const struct btrfs_root
*root
, u64 start
, u64 len
),
1344 TP_ARGS(root
, start
, len
)
1347 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent
, btrfs_reserved_extent_free
,
1349 TP_PROTO(const struct btrfs_root
*root
, u64 start
, u64 len
),
1351 TP_ARGS(root
, start
, len
)
1354 #else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) */
1356 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserved_extent
,
1358 TP_PROTO(struct btrfs_root
*root
, u64 start
, u64 len
),
1360 TP_ARGS(root
, start
, len
),
1363 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
1364 ctf_integer(u64
, start
, start
)
1365 ctf_integer(u64
, len
, len
)
1369 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent
, btrfs_reserved_extent_alloc
,
1371 TP_PROTO(struct btrfs_root
*root
, u64 start
, u64 len
),
1373 TP_ARGS(root
, start
, len
)
1376 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent
, btrfs_reserved_extent_free
,
1378 TP_PROTO(struct btrfs_root
*root
, u64 start
, u64 len
),
1380 TP_ARGS(root
, start
, len
)
1383 #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) */
1385 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,5,0))
1386 LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent
,
1388 btrfs_find_free_extent
,
1390 TP_PROTO(const struct btrfs_fs_info
*fs_info
, u64 num_bytes
, u64 empty_size
,
1393 TP_ARGS(fs_info
, num_bytes
, empty_size
, data
),
1396 ctf_array(u8
, fsid
, lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
1397 ctf_integer(u64
, num_bytes
, num_bytes
)
1398 ctf_integer(u64
, empty_size
, empty_size
)
1399 ctf_integer(u64
, data
, data
)
1403 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent
,
1405 TP_PROTO(const struct btrfs_block_group
*block_group
, u64 start
,
1408 TP_ARGS(block_group
, start
, len
),
1411 ctf_array(u8
, fsid
, block_group
->lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
1412 ctf_integer(u64
, bg_objectid
, block_group
->start
)
1413 ctf_integer(u64
, flags
, block_group
->flags
)
1414 ctf_integer(u64
, start
, start
)
1415 ctf_integer(u64
, len
, len
)
1419 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent
,
1421 TP_PROTO(const struct btrfs_block_group
*block_group
, u64 start
,
1424 TP_ARGS(block_group
, start
, len
)
1427 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent_cluster
,
1429 TP_PROTO(const struct btrfs_block_group
*block_group
, u64 start
,
1432 TP_ARGS(block_group
, start
, len
)
1435 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,18,0))
1436 LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent
,
1438 btrfs_find_free_extent
,
1440 TP_PROTO(const struct btrfs_fs_info
*fs_info
, u64 num_bytes
, u64 empty_size
,
1443 TP_ARGS(fs_info
, num_bytes
, empty_size
, data
),
1446 ctf_array(u8
, fsid
, lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
1447 ctf_integer(u64
, num_bytes
, num_bytes
)
1448 ctf_integer(u64
, empty_size
, empty_size
)
1449 ctf_integer(u64
, data
, data
)
1453 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent
,
1455 TP_PROTO(const struct btrfs_block_group_cache
*block_group
, u64 start
,
1458 TP_ARGS(block_group
, start
, len
),
1461 ctf_array(u8
, fsid
, block_group
->lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
1462 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1463 ctf_integer(u64
, flags
, block_group
->flags
)
1464 ctf_integer(u64
, start
, start
)
1465 ctf_integer(u64
, len
, len
)
1469 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent
,
1471 TP_PROTO(const struct btrfs_block_group_cache
*block_group
, u64 start
,
1474 TP_ARGS(block_group
, start
, len
)
1477 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent_cluster
,
1479 TP_PROTO(const struct btrfs_block_group_cache
*block_group
, u64 start
,
1482 TP_ARGS(block_group
, start
, len
)
1485 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0))
1486 LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent
,
1488 btrfs_find_free_extent
,
1490 TP_PROTO(const struct btrfs_fs_info
*fs_info
, u64 num_bytes
, u64 empty_size
,
1493 TP_ARGS(fs_info
, num_bytes
, empty_size
, data
),
1496 ctf_array(u8
, fsid
, lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
1497 ctf_integer(u64
, num_bytes
, num_bytes
)
1498 ctf_integer(u64
, empty_size
, empty_size
)
1499 ctf_integer(u64
, data
, data
)
1503 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent
,
1505 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
1506 const struct btrfs_block_group_cache
*block_group
, u64 start
,
1509 TP_ARGS(fs_info
, block_group
, start
, len
),
1512 ctf_array(u8
, fsid
, lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
1513 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1514 ctf_integer(u64
, flags
, block_group
->flags
)
1515 ctf_integer(u64
, start
, start
)
1516 ctf_integer(u64
, len
, len
)
1520 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent
,
1522 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
1523 const struct btrfs_block_group_cache
*block_group
, u64 start
,
1526 TP_ARGS(fs_info
, block_group
, start
, len
)
1529 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent_cluster
,
1531 TP_PROTO(const struct btrfs_fs_info
*fs_info
,
1532 const struct btrfs_block_group_cache
*block_group
, u64 start
,
1535 TP_ARGS(fs_info
, block_group
, start
, len
)
1538 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0))
1540 LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent
,
1542 btrfs_find_free_extent
,
1544 TP_PROTO(struct btrfs_fs_info
*fs_info
, u64 num_bytes
, u64 empty_size
,
1547 TP_ARGS(fs_info
, num_bytes
, empty_size
, data
),
1550 ctf_array(u8
, fsid
, lttng_fs_info_fsid
, BTRFS_UUID_SIZE
)
1551 ctf_integer(u64
, num_bytes
, num_bytes
)
1552 ctf_integer(u64
, empty_size
, empty_size
)
1553 ctf_integer(u64
, data
, data
)
1557 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent
,
1559 TP_PROTO(struct btrfs_fs_info
*fs_info
,
1560 struct btrfs_block_group_cache
*block_group
, u64 start
,
1563 TP_ARGS(fs_info
, block_group
, start
, len
),
1566 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1567 ctf_integer(u64
, flags
, block_group
->flags
)
1568 ctf_integer(u64
, start
, start
)
1569 ctf_integer(u64
, len
, len
)
1573 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent
,
1575 TP_PROTO(struct btrfs_fs_info
*fs_info
,
1576 struct btrfs_block_group_cache
*block_group
, u64 start
,
1579 TP_ARGS(fs_info
, block_group
, start
, len
)
1582 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent_cluster
,
1584 TP_PROTO(struct btrfs_fs_info
*fs_info
,
1585 struct btrfs_block_group_cache
*block_group
, u64 start
,
1588 TP_ARGS(fs_info
, block_group
, start
, len
)
1590 #elif (LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
1591 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
1592 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
1593 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
1595 LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent
,
1597 btrfs_find_free_extent
,
1599 TP_PROTO(const struct btrfs_root
*root
, u64 num_bytes
, u64 empty_size
,
1602 TP_ARGS(root
, num_bytes
, empty_size
, data
),
1605 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
1606 ctf_integer(u64
, num_bytes
, num_bytes
)
1607 ctf_integer(u64
, empty_size
, empty_size
)
1608 ctf_integer(u64
, data
, data
)
1612 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent
,
1614 TP_PROTO(const struct btrfs_root
*root
,
1615 const struct btrfs_block_group_cache
*block_group
, u64 start
,
1618 TP_ARGS(root
, block_group
, start
, len
),
1621 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
1622 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1623 ctf_integer(u64
, flags
, block_group
->flags
)
1624 ctf_integer(u64
, start
, start
)
1625 ctf_integer(u64
, len
, len
)
1629 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent
,
1631 TP_PROTO(const struct btrfs_root
*root
,
1632 const struct btrfs_block_group_cache
*block_group
, u64 start
,
1635 TP_ARGS(root
, block_group
, start
, len
)
1638 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent_cluster
,
1640 TP_PROTO(const struct btrfs_root
*root
,
1641 const struct btrfs_block_group_cache
*block_group
, u64 start
,
1644 TP_ARGS(root
, block_group
, start
, len
)
1647 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
1649 LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent
,
1651 btrfs_find_free_extent
,
1653 TP_PROTO(struct btrfs_root
*root
, u64 num_bytes
, u64 empty_size
,
1656 TP_ARGS(root
, num_bytes
, empty_size
, data
),
1659 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
1660 ctf_integer(u64
, num_bytes
, num_bytes
)
1661 ctf_integer(u64
, empty_size
, empty_size
)
1662 ctf_integer(u64
, data
, data
)
1666 LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent
,
1668 TP_PROTO(struct btrfs_root
*root
,
1669 struct btrfs_block_group_cache
*block_group
, u64 start
,
1672 TP_ARGS(root
, block_group
, start
, len
),
1675 ctf_integer(u64
, root_objectid
, root
->root_key
.objectid
)
1676 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1677 ctf_integer(u64
, flags
, block_group
->flags
)
1678 ctf_integer(u64
, start
, start
)
1679 ctf_integer(u64
, len
, len
)
1683 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent
,
1685 TP_PROTO(struct btrfs_root
*root
,
1686 struct btrfs_block_group_cache
*block_group
, u64 start
,
1689 TP_ARGS(root
, block_group
, start
, len
)
1692 LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent
, btrfs_reserve_extent_cluster
,
1694 TP_PROTO(struct btrfs_root
*root
,
1695 struct btrfs_block_group_cache
*block_group
, u64 start
,
1698 TP_ARGS(root
, block_group
, start
, len
)
1701 #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) */
1703 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,5,0))
1704 LTTNG_TRACEPOINT_EVENT(btrfs_find_cluster
,
1706 TP_PROTO(const struct btrfs_block_group
*block_group
, u64 start
,
1707 u64 bytes
, u64 empty_size
, u64 min_bytes
),
1709 TP_ARGS(block_group
, start
, bytes
, empty_size
, min_bytes
),
1712 ctf_integer(u64
, bg_objectid
, block_group
->start
)
1713 ctf_integer(u64
, flags
, block_group
->flags
)
1714 ctf_integer(u64
, start
, start
)
1715 ctf_integer(u64
, bytes
, bytes
)
1716 ctf_integer(u64
, empty_size
, empty_size
)
1717 ctf_integer(u64
, min_bytes
, min_bytes
)
1721 LTTNG_TRACEPOINT_EVENT(btrfs_failed_cluster_setup
,
1723 TP_PROTO(const struct btrfs_block_group
*block_group
),
1725 TP_ARGS(block_group
),
1728 ctf_integer(u64
, bg_objectid
, block_group
->start
)
1732 LTTNG_TRACEPOINT_EVENT(btrfs_setup_cluster
,
1734 TP_PROTO(const struct btrfs_block_group
*block_group
,
1735 const struct btrfs_free_cluster
*cluster
, u64 size
, int bitmap
),
1737 TP_ARGS(block_group
, cluster
, size
, bitmap
),
1740 ctf_integer(u64
, bg_objectid
, block_group
->start
)
1741 ctf_integer(u64
, flags
, block_group
->flags
)
1742 ctf_integer(u64
, start
, cluster
->window_start
)
1743 ctf_integer(u64
, max_size
, cluster
->max_size
)
1744 ctf_integer(u64
, size
, size
)
1745 ctf_integer(int, bitmap
, bitmap
)
1748 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0) || \
1749 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
1750 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
1751 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
1752 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
1753 LTTNG_TRACEPOINT_EVENT(btrfs_find_cluster
,
1755 TP_PROTO(const struct btrfs_block_group_cache
*block_group
, u64 start
,
1756 u64 bytes
, u64 empty_size
, u64 min_bytes
),
1758 TP_ARGS(block_group
, start
, bytes
, empty_size
, min_bytes
),
1761 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1762 ctf_integer(u64
, flags
, block_group
->flags
)
1763 ctf_integer(u64
, start
, start
)
1764 ctf_integer(u64
, bytes
, bytes
)
1765 ctf_integer(u64
, empty_size
, empty_size
)
1766 ctf_integer(u64
, min_bytes
, min_bytes
)
1770 LTTNG_TRACEPOINT_EVENT(btrfs_failed_cluster_setup
,
1772 TP_PROTO(const struct btrfs_block_group_cache
*block_group
),
1774 TP_ARGS(block_group
),
1777 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1781 LTTNG_TRACEPOINT_EVENT(btrfs_setup_cluster
,
1783 TP_PROTO(const struct btrfs_block_group_cache
*block_group
,
1784 const struct btrfs_free_cluster
*cluster
, u64 size
, int bitmap
),
1786 TP_ARGS(block_group
, cluster
, size
, bitmap
),
1789 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1790 ctf_integer(u64
, flags
, block_group
->flags
)
1791 ctf_integer(u64
, start
, cluster
->window_start
)
1792 ctf_integer(u64
, max_size
, cluster
->max_size
)
1793 ctf_integer(u64
, size
, size
)
1794 ctf_integer(int, bitmap
, bitmap
)
1797 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
1798 LTTNG_TRACEPOINT_EVENT(btrfs_find_cluster
,
1800 TP_PROTO(struct btrfs_block_group_cache
*block_group
, u64 start
,
1801 u64 bytes
, u64 empty_size
, u64 min_bytes
),
1803 TP_ARGS(block_group
, start
, bytes
, empty_size
, min_bytes
),
1806 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1807 ctf_integer(u64
, flags
, block_group
->flags
)
1808 ctf_integer(u64
, start
, start
)
1809 ctf_integer(u64
, bytes
, bytes
)
1810 ctf_integer(u64
, empty_size
, empty_size
)
1811 ctf_integer(u64
, min_bytes
, min_bytes
)
1815 LTTNG_TRACEPOINT_EVENT(btrfs_failed_cluster_setup
,
1817 TP_PROTO(struct btrfs_block_group_cache
*block_group
),
1819 TP_ARGS(block_group
),
1822 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1826 LTTNG_TRACEPOINT_EVENT(btrfs_setup_cluster
,
1828 TP_PROTO(struct btrfs_block_group_cache
*block_group
,
1829 struct btrfs_free_cluster
*cluster
, u64 size
, int bitmap
),
1831 TP_ARGS(block_group
, cluster
, size
, bitmap
),
1834 ctf_integer(u64
, bg_objectid
, block_group
->key
.objectid
)
1835 ctf_integer(u64
, flags
, block_group
->flags
)
1836 ctf_integer(u64
, start
, cluster
->window_start
)
1837 ctf_integer(u64
, max_size
, cluster
->max_size
)
1838 ctf_integer(u64
, size
, size
)
1839 ctf_integer(int, bitmap
, bitmap
)
1844 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0) || \
1845 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
1846 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
1847 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
1848 LTTNG_SLE_KERNEL_RANGE(4,4,103,6,0,0, 4,5,0,0,0,0))
1849 LTTNG_TRACEPOINT_EVENT_MAP(alloc_extent_state
,
1851 btrfs_alloc_extent_state
,
1853 TP_PROTO(const struct extent_state
*state
, gfp_t mask
, unsigned long IP
),
1855 TP_ARGS(state
, mask
, IP
),
1858 ctf_integer_hex(const struct extent_state
*, state
, state
)
1859 ctf_integer(gfp_t
, mask
, mask
)
1860 ctf_integer(unsigned long, ip
, IP
)
1864 LTTNG_TRACEPOINT_EVENT_MAP(free_extent_state
,
1866 btrfs_free_extent_state
,
1868 TP_PROTO(const struct extent_state
*state
, unsigned long IP
),
1873 ctf_integer_hex(const struct extent_state
*, state
, state
)
1874 ctf_integer(unsigned long, ip
, IP
)
1877 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0))
1878 LTTNG_TRACEPOINT_EVENT_MAP(alloc_extent_state
,
1880 btrfs_alloc_extent_state
,
1882 TP_PROTO(struct extent_state
*state
, gfp_t mask
, unsigned long IP
),
1884 TP_ARGS(state
, mask
, IP
),
1887 ctf_integer_hex(struct extent_state
*, state
, state
)
1888 ctf_integer(gfp_t
, mask
, mask
)
1889 ctf_integer(unsigned long, ip
, IP
)
1893 LTTNG_TRACEPOINT_EVENT_MAP(free_extent_state
,
1895 btrfs_free_extent_state
,
1897 TP_PROTO(struct extent_state
*state
, unsigned long IP
),
1902 ctf_integer_hex(struct extent_state
*, state
, state
)
1903 ctf_integer(unsigned long, ip
, IP
)
1908 #endif /* LTTNG_TRACE_BTRFS_H */
1910 /* This part must be outside protection */
1911 #include <probes/define_trace.h>