summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk.kim@samsung.com>2012-12-19 16:09:19 +0900
committerJaegeuk Kim <jaegeuk.kim@samsung.com>2012-12-26 10:39:52 +0900
commit30f0c75858c46a0273ccb838de401b1f5fdebe6f (patch)
tree11a1a02a34d8cb4604cffdb30d1b365d0243aae7 /fs
parent398b1ac5a57219823f942a8d3665b27ab99354de (diff)
downloadlinux-30f0c75858c46a0273ccb838de401b1f5fdebe6f.tar.gz
linux-30f0c75858c46a0273ccb838de401b1f5fdebe6f.tar.bz2
linux-30f0c75858c46a0273ccb838de401b1f5fdebe6f.zip
f2fs: should recover orphan and fsync data
The recovery routine should do all the time regardless of normal umount action. Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/f2fs/super.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index f4d9e03723db..50240d28ca24 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -528,8 +528,7 @@ static int f2fs_fill_super(struct super_block *sb, void *data, int silent)
/* if there are nt orphan nodes free them */
err = -EINVAL;
- if (!is_set_ckpt_flags(F2FS_CKPT(sbi), CP_UMOUNT_FLAG) &&
- recover_orphan_inodes(sbi))
+ if (recover_orphan_inodes(sbi))
goto free_node_inode;
/* read root inode and dentry */
@@ -548,8 +547,7 @@ static int f2fs_fill_super(struct super_block *sb, void *data, int silent)
}
/* recover fsynced data */
- if (!is_set_ckpt_flags(F2FS_CKPT(sbi), CP_UMOUNT_FLAG) &&
- !test_opt(sbi, DISABLE_ROLL_FORWARD))
+ if (!test_opt(sbi, DISABLE_ROLL_FORWARD))
recover_fsync_data(sbi);
/* After POR, we can run background GC thread */