提交 554b5125 编写于 作者: J Jaegeuk Kim

f2fs: add submit_bio tracepoint

This patch adds final submit_bio() tracepoint.
Reviewed-by: NChao Yu <yuchao0@huawei.com>
Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
上级 d621e6b3
...@@ -175,6 +175,10 @@ static inline void __submit_bio(struct f2fs_sb_info *sbi, ...@@ -175,6 +175,10 @@ static inline void __submit_bio(struct f2fs_sb_info *sbi,
current->plug && (type == DATA || type == NODE)) current->plug && (type == DATA || type == NODE))
blk_finish_plug(current->plug); blk_finish_plug(current->plug);
} }
if (is_read_io(bio_op(bio)))
trace_f2fs_submit_read_bio(sbi->sb, type, bio);
else
trace_f2fs_submit_write_bio(sbi->sb, type, bio);
submit_bio(bio); submit_bio(bio);
} }
...@@ -185,12 +189,12 @@ static void __submit_merged_bio(struct f2fs_bio_info *io) ...@@ -185,12 +189,12 @@ static void __submit_merged_bio(struct f2fs_bio_info *io)
if (!io->bio) if (!io->bio)
return; return;
bio_set_op_attrs(io->bio, fio->op, fio->op_flags);
if (is_read_io(fio->op)) if (is_read_io(fio->op))
trace_f2fs_submit_read_bio(io->sbi->sb, fio, io->bio); trace_f2fs_prepare_read_bio(io->sbi->sb, fio->type, io->bio);
else else
trace_f2fs_submit_write_bio(io->sbi->sb, fio, io->bio); trace_f2fs_prepare_write_bio(io->sbi->sb, fio->type, io->bio);
bio_set_op_attrs(io->bio, fio->op, fio->op_flags);
__submit_bio(io->sbi, io->bio, fio->type); __submit_bio(io->sbi, io->bio, fio->type);
io->bio = NULL; io->bio = NULL;
......
...@@ -784,12 +784,11 @@ DEFINE_EVENT_CONDITION(f2fs__submit_page_bio, f2fs_submit_page_mbio, ...@@ -784,12 +784,11 @@ DEFINE_EVENT_CONDITION(f2fs__submit_page_bio, f2fs_submit_page_mbio,
TP_CONDITION(page->mapping) TP_CONDITION(page->mapping)
); );
DECLARE_EVENT_CLASS(f2fs__submit_bio, DECLARE_EVENT_CLASS(f2fs__bio,
TP_PROTO(struct super_block *sb, struct f2fs_io_info *fio, TP_PROTO(struct super_block *sb, int type, struct bio *bio),
struct bio *bio),
TP_ARGS(sb, fio, bio), TP_ARGS(sb, type, bio),
TP_STRUCT__entry( TP_STRUCT__entry(
__field(dev_t, dev) __field(dev_t, dev)
...@@ -802,9 +801,9 @@ DECLARE_EVENT_CLASS(f2fs__submit_bio, ...@@ -802,9 +801,9 @@ DECLARE_EVENT_CLASS(f2fs__submit_bio,
TP_fast_assign( TP_fast_assign(
__entry->dev = sb->s_dev; __entry->dev = sb->s_dev;
__entry->op = fio->op; __entry->op = bio_op(bio);
__entry->op_flags = fio->op_flags; __entry->op_flags = bio->bi_opf;
__entry->type = fio->type; __entry->type = type;
__entry->sector = bio->bi_iter.bi_sector; __entry->sector = bio->bi_iter.bi_sector;
__entry->size = bio->bi_iter.bi_size; __entry->size = bio->bi_iter.bi_size;
), ),
...@@ -817,22 +816,38 @@ DECLARE_EVENT_CLASS(f2fs__submit_bio, ...@@ -817,22 +816,38 @@ DECLARE_EVENT_CLASS(f2fs__submit_bio,
__entry->size) __entry->size)
); );
DEFINE_EVENT_CONDITION(f2fs__submit_bio, f2fs_submit_write_bio, DEFINE_EVENT_CONDITION(f2fs__bio, f2fs_prepare_write_bio,
TP_PROTO(struct super_block *sb, int type, struct bio *bio),
TP_ARGS(sb, type, bio),
TP_CONDITION(bio)
);
DEFINE_EVENT_CONDITION(f2fs__bio, f2fs_prepare_read_bio,
TP_PROTO(struct super_block *sb, int type, struct bio *bio),
TP_ARGS(sb, type, bio),
TP_CONDITION(bio)
);
DEFINE_EVENT_CONDITION(f2fs__bio, f2fs_submit_read_bio,
TP_PROTO(struct super_block *sb, struct f2fs_io_info *fio, TP_PROTO(struct super_block *sb, int type, struct bio *bio),
struct bio *bio),
TP_ARGS(sb, fio, bio), TP_ARGS(sb, type, bio),
TP_CONDITION(bio) TP_CONDITION(bio)
); );
DEFINE_EVENT_CONDITION(f2fs__submit_bio, f2fs_submit_read_bio, DEFINE_EVENT_CONDITION(f2fs__bio, f2fs_submit_write_bio,
TP_PROTO(struct super_block *sb, struct f2fs_io_info *fio, TP_PROTO(struct super_block *sb, int type, struct bio *bio),
struct bio *bio),
TP_ARGS(sb, fio, bio), TP_ARGS(sb, type, bio),
TP_CONDITION(bio) TP_CONDITION(bio)
); );
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册