btrfs: tracepoints: add trace event for log_new_delayed_dentries()

log_new_delayed_dentries() is an important step called during a fsync, as
well as during rename and link operations on inodes that were previously
logged. Add trace events for when entering and exiting that function.

Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Filipe Manana
2026-05-08 17:09:48 +01:00
parent fdae3bfd2d
commit 5fe47577ad
2 changed files with 63 additions and 0 deletions

View File

@@ -1347,6 +1347,59 @@ TRACE_EVENT(btrfs_log_conflicting_inodes_exit,
__entry->ctx_ino, __entry->ret)
);
TRACE_EVENT(btrfs_log_new_delayed_dentries_enter,
TP_PROTO(const struct btrfs_trans_handle *trans,
const struct btrfs_inode *inode),
TP_ARGS(trans, inode),
TP_STRUCT__entry_btrfs(
__field( u64, root_objectid )
__field( u64, transid )
__field( u64, ino )
),
TP_fast_assign(
TP_fast_assign_fsid(trans->fs_info);
__entry->root_objectid = btrfs_root_id(inode->root);
__entry->transid = trans->transid;
__entry->ino = btrfs_ino(inode);
),
TP_printk_btrfs("root=%llu(%s) transid=%llu ino=%llu",
show_root_type(__entry->root_objectid), __entry->transid,
__entry->ino)
);
TRACE_EVENT(btrfs_log_new_delayed_dentries_exit,
TP_PROTO(const struct btrfs_trans_handle *trans,
const struct btrfs_inode *inode,
int ret),
TP_ARGS(trans, inode, ret),
TP_STRUCT__entry_btrfs(
__field( u64, root_objectid )
__field( u64, transid )
__field( u64, ino )
__field( int, ret )
),
TP_fast_assign(
TP_fast_assign_fsid(trans->fs_info);
__entry->root_objectid = btrfs_root_id(inode->root);
__entry->transid = trans->transid;
__entry->ino = btrfs_ino(inode);
__entry->ret = ret;
),
TP_printk_btrfs("root=%llu(%s) transid=%llu ino=%llu ret=%d",
show_root_type(__entry->root_objectid), __entry->transid,
__entry->ino, __entry->ret)
);
TRACE_EVENT(btrfs_sync_fs,
TP_PROTO(const struct btrfs_fs_info *fs_info, int wait),