summaryrefslogtreecommitdiffstats
path: root/fs/f2fs/checkpoint.c
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/f2fs/checkpoint.c
parent7df3a4318d07ba520b4a8eddad29e9ac748b0a19 (diff)
downloadlinux-stable-4cf185379b7504d640c9dd72f959f081b25f6ea2.tar.gz
linux-stable-4cf185379b7504d640c9dd72f959f081b25f6ea2.tar.bz2
linux-stable-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/f2fs/checkpoint.c')
-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);