|
@@ -1542,6 +1542,55 @@ TRACE_EVENT(ext4_journal_start,
|
|
|
__entry->nblocks, (void *)__entry->ip)
|
|
|
);
|
|
|
|
|
|
+DECLARE_EVENT_CLASS(ext4__trim,
|
|
|
+ TP_PROTO(struct super_block *sb,
|
|
|
+ ext4_group_t group,
|
|
|
+ ext4_grpblk_t start,
|
|
|
+ ext4_grpblk_t len),
|
|
|
+
|
|
|
+ TP_ARGS(sb, group, start, len),
|
|
|
+
|
|
|
+ TP_STRUCT__entry(
|
|
|
+ __field( int, dev_major )
|
|
|
+ __field( int, dev_minor )
|
|
|
+ __field( __u32, group )
|
|
|
+ __field( int, start )
|
|
|
+ __field( int, len )
|
|
|
+ ),
|
|
|
+
|
|
|
+ TP_fast_assign(
|
|
|
+ __entry->dev_major = MAJOR(sb->s_dev);
|
|
|
+ __entry->dev_minor = MINOR(sb->s_dev);
|
|
|
+ __entry->group = group;
|
|
|
+ __entry->start = start;
|
|
|
+ __entry->len = len;
|
|
|
+ ),
|
|
|
+
|
|
|
+ TP_printk("dev %d,%d group %u, start %d, len %d",
|
|
|
+ __entry->dev_major, __entry->dev_minor,
|
|
|
+ __entry->group, __entry->start, __entry->len)
|
|
|
+);
|
|
|
+
|
|
|
+DEFINE_EVENT(ext4__trim, ext4_trim_extent,
|
|
|
+
|
|
|
+ TP_PROTO(struct super_block *sb,
|
|
|
+ ext4_group_t group,
|
|
|
+ ext4_grpblk_t start,
|
|
|
+ ext4_grpblk_t len),
|
|
|
+
|
|
|
+ TP_ARGS(sb, group, start, len)
|
|
|
+);
|
|
|
+
|
|
|
+DEFINE_EVENT(ext4__trim, ext4_trim_all_free,
|
|
|
+
|
|
|
+ TP_PROTO(struct super_block *sb,
|
|
|
+ ext4_group_t group,
|
|
|
+ ext4_grpblk_t start,
|
|
|
+ ext4_grpblk_t len),
|
|
|
+
|
|
|
+ TP_ARGS(sb, group, start, len)
|
|
|
+);
|
|
|
+
|
|
|
#endif /* _TRACE_EXT4_H */
|
|
|
|
|
|
/* This part must be outside protection */
|