btrfs: tracepoints: also show actual number of the outstanding extents
authorNaohiro Aota <naohiro.aota@wdc.com>
Mon, 19 Jun 2023 02:15:31 +0000 (11:15 +0900)
committerDavid Sterba <dsterba@suse.com>
Mon, 19 Jun 2023 17:47:58 +0000 (19:47 +0200)
The btrfs_inode_mod_outstanding_extents trace event only shows the modified
number to the number of outstanding extents. It would be helpful if we can
see the resulting extent number as well.

Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/btrfs_inode.h
include/trace/events/btrfs.h

index 8abf96c..d47a927 100644 (file)
@@ -332,7 +332,7 @@ static inline void btrfs_mod_outstanding_extents(struct btrfs_inode *inode,
        if (btrfs_is_free_space_inode(inode))
                return;
        trace_btrfs_inode_mod_outstanding_extents(inode->root, btrfs_ino(inode),
-                                                 mod);
+                                                 mod, inode->outstanding_extents);
 }
 
 /*
index c6eee9b..a8206f5 100644 (file)
@@ -2011,25 +2011,27 @@ DEFINE_EVENT(btrfs__prelim_ref, btrfs_prelim_ref_insert,
 );
 
 TRACE_EVENT(btrfs_inode_mod_outstanding_extents,
-       TP_PROTO(const struct btrfs_root *root, u64 ino, int mod),
+       TP_PROTO(const struct btrfs_root *root, u64 ino, int mod, unsigned outstanding),
 
-       TP_ARGS(root, ino, mod),
+       TP_ARGS(root, ino, mod, outstanding),
 
        TP_STRUCT__entry_btrfs(
                __field(        u64, root_objectid      )
                __field(        u64, ino                )
                __field(        int, mod                )
+               __field(        unsigned, outstanding   )
        ),
 
        TP_fast_assign_btrfs(root->fs_info,
                __entry->root_objectid  = root->root_key.objectid;
                __entry->ino            = ino;
                __entry->mod            = mod;
+               __entry->outstanding    = outstanding;
        ),
 
-       TP_printk_btrfs("root=%llu(%s) ino=%llu mod=%d",
+       TP_printk_btrfs("root=%llu(%s) ino=%llu mod=%d outstanding=%u",
                        show_root_type(__entry->root_objectid),
-                       __entry->ino, __entry->mod)
+                       __entry->ino, __entry->mod, __entry->outstanding)
 );
 
 DECLARE_EVENT_CLASS(btrfs__block_group,