aboutsummaryrefslogtreecommitdiffstats
path: root/fs/f2fs/segment.c
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk.kim@samsung.com>2013-06-14 08:52:35 +0900
committerAndreas Blaesius <skate4life@gmx.de>2016-06-05 21:20:29 +0200
commita50c5f9cb496bdfe1e6bda85584a368e50a6da2c (patch)
treef2d89c6f1edb11dd7288ca780a859ec09c02fc98 /fs/f2fs/segment.c
parent34eaf6bec420bd64a9241c5954e18d0ce8fb69e1 (diff)
downloadkernel_samsung_espresso10-a50c5f9cb496bdfe1e6bda85584a368e50a6da2c.zip
kernel_samsung_espresso10-a50c5f9cb496bdfe1e6bda85584a368e50a6da2c.tar.gz
kernel_samsung_espresso10-a50c5f9cb496bdfe1e6bda85584a368e50a6da2c.tar.bz2
f2fs: recover wrong pino after checkpoint during fsync
If a file is linked, f2fs loose its parent inode number so that fsync calls for the linked file should do checkpoint all the time. But, if we can recover its parent inode number after the checkpoint, we can adjust roll-forward mechanism for the further fsync calls, which is able to improve the fsync performance significatly. Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com> Conflicts: fs/f2fs/file.c Change-Id: Ieef8a90c123fb07290df440e9aef091f256e61c7
Diffstat (limited to 'fs/f2fs/segment.c')
-rw-r--r--fs/f2fs/segment.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c
index b15debc..0e1a60a 100644
--- a/fs/f2fs/segment.c
+++ b/fs/f2fs/segment.c
@@ -796,7 +796,7 @@ static int __get_segment_type_6(struct page *page, enum page_type p_type)
if (S_ISDIR(inode->i_mode))
return CURSEG_HOT_DATA;
- else if (is_cold_data(page) || is_cold_file(inode))
+ else if (is_cold_data(page) || file_is_cold(inode))
return CURSEG_COLD_DATA;
else
return CURSEG_WARM_DATA;