- TP_STRUCT__entry(
- __field( ino_t, ino )
- __field( u64, file_offset )
- __field( u64, start )
- __field( u64, len )
- __field( u64, disk_len )
- __field( u64, bytes_left )
- __field( unsigned long, flags )
- __field( int, compress_type )
- __field( int, refs )
- __field( u64, root_objectid )
- ),
-
- TP_fast_assign(
- tp_assign(ino, inode->i_ino)
- tp_assign(file_offset, ordered->file_offset)
- tp_assign(start, ordered->start)
- tp_assign(len, ordered->len)
- tp_assign(disk_len, ordered->disk_len)
- tp_assign(bytes_left, ordered->bytes_left)
- tp_assign(flags, ordered->flags)
- tp_assign(compress_type, ordered->compress_type)
- tp_assign(refs, atomic_read(&ordered->refs))
- tp_assign(root_objectid,
+ TP_FIELDS(
+ ctf_integer(ino_t, ino, inode->i_ino)
+ ctf_integer(u64, file_offset, ordered->file_offset)
+ ctf_integer(u64, start, ordered->start)
+ ctf_integer(u64, len, ordered->len)
+ ctf_integer(u64, disk_len, ordered->disk_len)
+ ctf_integer(u64, bytes_left, ordered->bytes_left)
+ ctf_integer(unsigned long, flags, ordered->flags)
+ ctf_integer(int, compress_type, ordered->compress_type)
+ ctf_integer(int, refs, refcount_read(&ordered->refs))
+ ctf_integer(u64, root_objectid,
+ BTRFS_I(inode)->root->root_key.objectid)
+ )
+)
+#else
+LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__ordered_extent,
+
+ TP_PROTO(struct inode *inode, struct btrfs_ordered_extent *ordered),
+
+ TP_ARGS(inode, ordered),
+
+ TP_FIELDS(
+ ctf_integer(ino_t, ino, inode->i_ino)
+ ctf_integer(u64, file_offset, ordered->file_offset)
+ ctf_integer(u64, start, ordered->start)
+ ctf_integer(u64, len, ordered->len)
+ ctf_integer(u64, disk_len, ordered->disk_len)
+ ctf_integer(u64, bytes_left, ordered->bytes_left)
+ ctf_integer(unsigned long, flags, ordered->flags)
+ ctf_integer(int, compress_type, ordered->compress_type)
+ ctf_integer(int, refs, atomic_read(&ordered->refs))
+ ctf_integer(u64, root_objectid,
+ BTRFS_I(inode)->root->root_key.objectid)
+ )
+)
+#endif
+
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0))
+LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent, btrfs_ordered_extent_add,
+
+ TP_PROTO(const struct inode *inode,
+ const struct btrfs_ordered_extent *ordered),
+
+ TP_ARGS(inode, ordered)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent, btrfs_ordered_extent_remove,
+
+ TP_PROTO(const struct inode *inode,
+ const struct btrfs_ordered_extent *ordered),
+
+ TP_ARGS(inode, ordered)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent, btrfs_ordered_extent_start,
+
+ TP_PROTO(const struct inode *inode,
+ const struct btrfs_ordered_extent *ordered),
+
+ TP_ARGS(inode, ordered)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__ordered_extent, btrfs_ordered_extent_put,
+
+ TP_PROTO(const struct inode *inode,
+ const struct btrfs_ordered_extent *ordered),
+
+ TP_ARGS(inode, ordered)
+)
+
+LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__writepage,
+
+ TP_PROTO(const struct page *page, const struct inode *inode,
+ const struct writeback_control *wbc),
+
+ TP_ARGS(page, inode, wbc),
+
+ TP_FIELDS(
+ ctf_integer(ino_t, ino, inode->i_ino)
+ ctf_integer(pgoff_t, index, page->index)
+ ctf_integer(long, nr_to_write, wbc->nr_to_write)
+ ctf_integer(long, pages_skipped, wbc->pages_skipped)
+ ctf_integer(loff_t, range_start, wbc->range_start)
+ ctf_integer(loff_t, range_end, wbc->range_end)
+ ctf_integer(char, for_kupdate, wbc->for_kupdate)
+ ctf_integer(char, for_reclaim, wbc->for_reclaim)
+ ctf_integer(char, range_cyclic, wbc->range_cyclic)
+ ctf_integer(pgoff_t, writeback_index,
+ inode->i_mapping->writeback_index)
+ ctf_integer(u64, root_objectid,