From: Namjae Jeon <namjae.jeon@xxxxxxxxxxx> Add tracepoints for tracing the garbage collector threads in f2fs with status of collection & type. Signed-off-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx> Signed-off-by: Pankaj Kumar <pankaj.km@xxxxxxxxxxx> --- fs/f2fs/gc.c | 2 ++ include/trace/events/f2fs.h | 20 ++++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c index 54ac13d..93bb0f9 100644 --- a/fs/f2fs/gc.c +++ b/fs/f2fs/gc.c @@ -23,6 +23,7 @@ #include "node.h" #include "segment.h" #include "gc.h" +#include <trace/events/f2fs.h> static struct kmem_cache *winode_slab; @@ -239,6 +240,7 @@ static int get_victim_by_default(struct f2fs_sb_info *sbi, struct victim_sel_policy p; int nsearched = 0; + trace_f2fs_get_victim(sbi->sb, gc_type); p.alloc_mode = alloc_mode; select_policy(sbi, gc_type, type, &p); diff --git a/include/trace/events/f2fs.h b/include/trace/events/f2fs.h index 3df0525..f9efe99 100644 --- a/include/trace/events/f2fs.h +++ b/include/trace/events/f2fs.h @@ -327,6 +327,26 @@ DEFINE_EVENT(f2fs_data_block, f2fs_get_data_block_exit, TP_ARGS(inode, block, ret) ); +TRACE_EVENT(f2fs_get_victim, + TP_PROTO(struct super_block *sb, int gc_type), + + TP_ARGS(sb, gc_type), + + TP_STRUCT__entry( + __field(dev_t, dev) + __field(int, type) + ), + + TP_fast_assign( + __entry->dev = sb->s_dev; + __entry->type = gc_type; + ), + + TP_printk("dev %d,%d GC_type %d ", + MAJOR(__entry->dev), MINOR(__entry->dev), + __entry->type) +); + #endif /* _TRACE_F2FS_H */ /* This part must be outside protection */ -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html