aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorChao Yu <chao2.yu@samsung.com>2015-12-17 17:17:16 +0800
committerJaegeuk Kim <jaegeuk@kernel.org>2015-12-17 09:55:27 -0800
commit4cf185379b7504d640c9dd72f959f081b25f6ea2 (patch)
tree2796d6a7f2112983d67f394b542a9e1136cb3ff4 /fs
parentf2fs: optimize the flow of f2fs_map_blocks (diff)
downloadlinux-dev-4cf185379b7504d640c9dd72f959f081b25f6ea2.tar.xz
linux-dev-4cf185379b7504d640c9dd72f959f081b25f6ea2.zip
f2fs: add a tracepoint for sync_dirty_inodes
This patch adds a tracepoint for sync_dirty_inodes. Signed-off-by: Chao Yu <chao2.yu@samsung.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs')
-rw-r--r--fs/f2fs/checkpoint.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/fs/f2fs/checkpoint.c b/fs/f2fs/checkpoint.c
index 53044ea8bb5d..fdd43f71d2c6 100644
--- a/fs/f2fs/checkpoint.c
+++ b/fs/f2fs/checkpoint.c
@@ -803,6 +803,11 @@ void sync_dirty_inodes(struct f2fs_sb_info *sbi, enum inode_type type)
struct list_head *head;
struct inode *inode;
struct f2fs_inode_info *fi;
+ bool is_dir = (type == DIR_INODE);
+
+ trace_f2fs_sync_dirty_inodes_enter(sbi->sb, is_dir,
+ get_pages(sbi, is_dir ?
+ F2FS_DIRTY_DENTS : F2FS_DIRTY_DATA));
retry:
if (unlikely(f2fs_cp_error(sbi)))
return;
@@ -812,6 +817,9 @@ retry:
head = &sbi->inode_list[type];
if (list_empty(head)) {
spin_unlock(&sbi->inode_lock[type]);
+ trace_f2fs_sync_dirty_inodes_exit(sbi->sb, is_dir,
+ get_pages(sbi, is_dir ?
+ F2FS_DIRTY_DENTS : F2FS_DIRTY_DATA));
return;
}
fi = list_entry(head->next, struct f2fs_inode_info, dirty_list);