diff options
| author | Chao Yu <chao2.yu@samsung.com> | 2014-05-06 04:51:24 -0400 |
|---|---|---|
| committer | Jaegeuk Kim <jaegeuk.kim@samsung.com> | 2014-05-06 21:21:59 -0400 |
| commit | e57484343898094bb8f72a2aa1a50929d27aa027 (patch) | |
| tree | 546dabf60fe27846c3a8ea2a834a9bb5bec4b42c /include/trace | |
| parent | ecda0de3430455378f1c02523bf3ad71d91d613a (diff) | |
f2fs: add a tracepoint for f2fs_write_{meta,node,data}_pages
This patch adds a tracepoint for f2fs_write_{meta,node,data}_pages to trace when
pages are fsyncing/flushing.
Signed-off-by: Chao Yu <chao2.yu@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
Diffstat (limited to 'include/trace')
| -rw-r--r-- | include/trace/events/f2fs.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/include/trace/events/f2fs.h b/include/trace/events/f2fs.h index d70991e69e58..91b1fcc5ec93 100644 --- a/include/trace/events/f2fs.h +++ b/include/trace/events/f2fs.h | |||
| @@ -772,6 +772,70 @@ DEFINE_EVENT(f2fs__page, f2fs_vm_page_mkwrite, | |||
| 772 | TP_ARGS(page, type) | 772 | TP_ARGS(page, type) |
| 773 | ); | 773 | ); |
| 774 | 774 | ||
| 775 | TRACE_EVENT(f2fs_writepages, | ||
| 776 | |||
| 777 | TP_PROTO(struct inode *inode, struct writeback_control *wbc, int type), | ||
| 778 | |||
| 779 | TP_ARGS(inode, wbc, type), | ||
| 780 | |||
| 781 | TP_STRUCT__entry( | ||
| 782 | __field(dev_t, dev) | ||
| 783 | __field(ino_t, ino) | ||
| 784 | __field(int, type) | ||
| 785 | __field(int, dir) | ||
| 786 | __field(long, nr_to_write) | ||
| 787 | __field(long, pages_skipped) | ||
| 788 | __field(loff_t, range_start) | ||
| 789 | __field(loff_t, range_end) | ||
| 790 | __field(pgoff_t, writeback_index) | ||
| 791 | __field(int, sync_mode) | ||
| 792 | __field(char, for_kupdate) | ||
| 793 | __field(char, for_background) | ||
| 794 | __field(char, tagged_writepages) | ||
| 795 | __field(char, for_reclaim) | ||
| 796 | __field(char, range_cyclic) | ||
| 797 | __field(char, for_sync) | ||
| 798 | ), | ||
| 799 | |||
| 800 | TP_fast_assign( | ||
| 801 | __entry->dev = inode->i_sb->s_dev; | ||
| 802 | __entry->ino = inode->i_ino; | ||
| 803 | __entry->type = type; | ||
| 804 | __entry->dir = S_ISDIR(inode->i_mode); | ||
| 805 | __entry->nr_to_write = wbc->nr_to_write; | ||
| 806 | __entry->pages_skipped = wbc->pages_skipped; | ||
| 807 | __entry->range_start = wbc->range_start; | ||
| 808 | __entry->range_end = wbc->range_end; | ||
| 809 | __entry->writeback_index = inode->i_mapping->writeback_index; | ||
| 810 | __entry->sync_mode = wbc->sync_mode; | ||
| 811 | __entry->for_kupdate = wbc->for_kupdate; | ||
| 812 | __entry->for_background = wbc->for_background; | ||
| 813 | __entry->tagged_writepages = wbc->tagged_writepages; | ||
| 814 | __entry->for_reclaim = wbc->for_reclaim; | ||
| 815 | __entry->range_cyclic = wbc->range_cyclic; | ||
| 816 | __entry->for_sync = wbc->for_sync; | ||
| 817 | ), | ||
| 818 | |||
| 819 | TP_printk("dev = (%d,%d), ino = %lu, %s, %s, nr_to_write %ld, " | ||
| 820 | "skipped %ld, start %lld, end %lld, wb_idx %lu, sync_mode %d, " | ||
| 821 | "kupdate %u background %u tagged %u reclaim %u cyclic %u sync %u", | ||
| 822 | show_dev_ino(__entry), | ||
| 823 | show_block_type(__entry->type), | ||
| 824 | show_file_type(__entry->dir), | ||
| 825 | __entry->nr_to_write, | ||
| 826 | __entry->pages_skipped, | ||
| 827 | __entry->range_start, | ||
| 828 | __entry->range_end, | ||
| 829 | (unsigned long)__entry->writeback_index, | ||
| 830 | __entry->sync_mode, | ||
| 831 | __entry->for_kupdate, | ||
| 832 | __entry->for_background, | ||
| 833 | __entry->tagged_writepages, | ||
| 834 | __entry->for_reclaim, | ||
| 835 | __entry->range_cyclic, | ||
| 836 | __entry->for_sync) | ||
| 837 | ); | ||
| 838 | |||
| 775 | TRACE_EVENT(f2fs_submit_page_mbio, | 839 | TRACE_EVENT(f2fs_submit_page_mbio, |
| 776 | 840 | ||
| 777 | TP_PROTO(struct page *page, int rw, int type, block_t blk_addr), | 841 | TP_PROTO(struct page *page, int rw, int type, block_t blk_addr), |
