diff options
author | Chao Yu <chao2.yu@samsung.com> | 2014-05-06 04:47:23 -0400 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk.kim@samsung.com> | 2014-05-06 21:21:59 -0400 |
commit | dfb2bf38bf89e15a65f9996566b2945921388a2f (patch) | |
tree | efe5c9496469fd694a19c57422a4a42bac8ba1e0 | |
parent | 62aed044ea4bef36ac3f6885611b013b11c9be2d (diff) |
f2fs: add a tracepoint for f2fs_write_end
This patch adds a tracepoint for f2fs_write_end to trace write op of user.
Signed-off-by: Chao Yu <chao2.yu@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
-rw-r--r-- | fs/f2fs/data.c | 2 | ||||
-rw-r--r-- | include/trace/events/f2fs.h | 30 |
2 files changed, 32 insertions, 0 deletions
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index cde0d69969b9..ea58fb698ac6 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c | |||
@@ -989,6 +989,8 @@ static int f2fs_write_end(struct file *file, | |||
989 | { | 989 | { |
990 | struct inode *inode = page->mapping->host; | 990 | struct inode *inode = page->mapping->host; |
991 | 991 | ||
992 | trace_f2fs_write_end(inode, pos, len, copied); | ||
993 | |||
992 | SetPageUptodate(page); | 994 | SetPageUptodate(page); |
993 | set_page_dirty(page); | 995 | set_page_dirty(page); |
994 | 996 | ||
diff --git a/include/trace/events/f2fs.h b/include/trace/events/f2fs.h index 1e9375aa9340..483804b55742 100644 --- a/include/trace/events/f2fs.h +++ b/include/trace/events/f2fs.h | |||
@@ -689,6 +689,36 @@ TRACE_EVENT(f2fs_write_begin, | |||
689 | __entry->flags) | 689 | __entry->flags) |
690 | ); | 690 | ); |
691 | 691 | ||
692 | TRACE_EVENT(f2fs_write_end, | ||
693 | |||
694 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | ||
695 | unsigned int copied), | ||
696 | |||
697 | TP_ARGS(inode, pos, len, copied), | ||
698 | |||
699 | TP_STRUCT__entry( | ||
700 | __field(dev_t, dev) | ||
701 | __field(ino_t, ino) | ||
702 | __field(loff_t, pos) | ||
703 | __field(unsigned int, len) | ||
704 | __field(unsigned int, copied) | ||
705 | ), | ||
706 | |||
707 | TP_fast_assign( | ||
708 | __entry->dev = inode->i_sb->s_dev; | ||
709 | __entry->ino = inode->i_ino; | ||
710 | __entry->pos = pos; | ||
711 | __entry->len = len; | ||
712 | __entry->copied = copied; | ||
713 | ), | ||
714 | |||
715 | TP_printk("dev = (%d,%d), ino = %lu, pos = %llu, len = %u, copied = %u", | ||
716 | show_dev_ino(__entry), | ||
717 | (unsigned long long)__entry->pos, | ||
718 | __entry->len, | ||
719 | __entry->copied) | ||
720 | ); | ||
721 | |||
692 | DECLARE_EVENT_CLASS(f2fs__page, | 722 | DECLARE_EVENT_CLASS(f2fs__page, |
693 | 723 | ||
694 | TP_PROTO(struct page *page, int type), | 724 | TP_PROTO(struct page *page, int type), |