mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-01 10:45:49 +00:00
f2fs: remove unneeded write checkpoint in recover_fsync_data
Previously, recover_fsync_data still to write checkpoint when there is nothing to recover with normal umount image. It may reduce mount performance and flash memory lifetime, so let's remove it. Signed-off-by: Tan Shu <shu.tan@samsung.com> Signed-off-by: Yu Chao <chao2.yu@samsung.com> Reviewed-by: Gu Zheng <guz.fnst@cn.fujitsu.com> Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
This commit is contained in:
parent
cc7b1bb173
commit
691c6fd2a2
@ -419,6 +419,7 @@ int recover_fsync_data(struct f2fs_sb_info *sbi)
|
||||
{
|
||||
struct list_head inode_list;
|
||||
int err;
|
||||
int need_writecp = 0;
|
||||
|
||||
fsync_entry_slab = f2fs_kmem_cache_create("f2fs_fsync_inode_entry",
|
||||
sizeof(struct fsync_inode_entry), NULL);
|
||||
@ -436,6 +437,8 @@ int recover_fsync_data(struct f2fs_sb_info *sbi)
|
||||
if (list_empty(&inode_list))
|
||||
goto out;
|
||||
|
||||
need_writecp = 1;
|
||||
|
||||
/* step #2: recover data */
|
||||
err = recover_data(sbi, &inode_list, CURSEG_WARM_NODE);
|
||||
BUG_ON(!list_empty(&inode_list));
|
||||
@ -443,7 +446,7 @@ int recover_fsync_data(struct f2fs_sb_info *sbi)
|
||||
destroy_fsync_dnodes(&inode_list);
|
||||
kmem_cache_destroy(fsync_entry_slab);
|
||||
sbi->por_doing = 0;
|
||||
if (!err)
|
||||
if (!err && need_writecp)
|
||||
write_checkpoint(sbi, false);
|
||||
return err;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user