f2fs: adds a tracepoint for submit_read_page

This patch adds a tracepoint for submit_read_page.

Signed-off-by: Chao Yu <chao2.yu@samsung.com>
[Jaegeuk Kim: integrate tracepoints of f2fs_submit_read(_write)_page]
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
This commit is contained in:
Chao Yu 2013-11-20 16:40:10 +08:00 committed by Jaegeuk Kim
parent 61ae45c880
commit 87b8872d5b
3 changed files with 23 additions and 5 deletions

View file

@ -462,6 +462,7 @@ alloc_new:
io->last_block_in_bio = blk_addr; io->last_block_in_bio = blk_addr;
mutex_unlock(&io->io_mutex); mutex_unlock(&io->io_mutex);
trace_f2fs_submit_read_page(page, rw, META, blk_addr);
} }
/* /*

View file

@ -923,7 +923,7 @@ retry:
io->last_block_in_bio = blk_addr; io->last_block_in_bio = blk_addr;
mutex_unlock(&io->io_mutex); mutex_unlock(&io->io_mutex);
trace_f2fs_submit_write_page(page, blk_addr, type); trace_f2fs_submit_write_page(page, WRITE, type, blk_addr);
} }
void f2fs_wait_on_page_writeback(struct page *page, void f2fs_wait_on_page_writeback(struct page *page,

View file

@ -674,15 +674,16 @@ DEFINE_EVENT(f2fs__page, f2fs_vm_page_mkwrite,
TP_ARGS(page, type) TP_ARGS(page, type)
); );
TRACE_EVENT(f2fs_submit_write_page, DECLARE_EVENT_CLASS(f2fs_io_page,
TP_PROTO(struct page *page, block_t blk_addr, int type), TP_PROTO(struct page *page, int rw, int type, block_t blk_addr),
TP_ARGS(page, blk_addr, type), TP_ARGS(page, rw, type, blk_addr),
TP_STRUCT__entry( TP_STRUCT__entry(
__field(dev_t, dev) __field(dev_t, dev)
__field(ino_t, ino) __field(ino_t, ino)
__field(int, rw)
__field(int, type) __field(int, type)
__field(pgoff_t, index) __field(pgoff_t, index)
__field(block_t, block) __field(block_t, block)
@ -691,18 +692,34 @@ TRACE_EVENT(f2fs_submit_write_page,
TP_fast_assign( TP_fast_assign(
__entry->dev = page->mapping->host->i_sb->s_dev; __entry->dev = page->mapping->host->i_sb->s_dev;
__entry->ino = page->mapping->host->i_ino; __entry->ino = page->mapping->host->i_ino;
__entry->rw = rw;
__entry->type = type; __entry->type = type;
__entry->index = page->index; __entry->index = page->index;
__entry->block = blk_addr; __entry->block = blk_addr;
), ),
TP_printk("dev = (%d,%d), ino = %lu, %s, index = %lu, blkaddr = 0x%llx", TP_printk("dev = (%d,%d), ino = %lu, %s, %s, index = %lu, blkaddr = 0x%llx",
show_dev_ino(__entry), show_dev_ino(__entry),
show_bio_type(__entry->rw),
show_block_type(__entry->type), show_block_type(__entry->type),
(unsigned long)__entry->index, (unsigned long)__entry->index,
(unsigned long long)__entry->block) (unsigned long long)__entry->block)
); );
DEFINE_EVENT(f2fs_io_page, f2fs_submit_write_page,
TP_PROTO(struct page *page, int rw, int type, block_t blk_addr),
TP_ARGS(page, rw, type, blk_addr)
);
DEFINE_EVENT(f2fs_io_page, f2fs_submit_read_page,
TP_PROTO(struct page *page, int rw, int type, block_t blk_addr),
TP_ARGS(page, rw, type, blk_addr)
);
TRACE_EVENT(f2fs_write_checkpoint, TRACE_EVENT(f2fs_write_checkpoint,
TP_PROTO(struct super_block *sb, bool is_umount, char *msg), TP_PROTO(struct super_block *sb, bool is_umount, char *msg),