diff options
author | Jaegeuk Kim <jaegeuk.kim@samsung.com> | 2013-05-20 14:48:49 +0900 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk.kim@samsung.com> | 2013-05-28 15:03:03 +0900 |
commit | 2c2c149f7dabd5a4d41cae5d2c2ce1d130acf72c (patch) | |
tree | 97df822bb926b581500e2f5b0c0477a873968986 | |
parent | 45856aff0d9091f4836e333951c66eca382a8573 (diff) |
f2fs: don't do checkpoint if error is occurred
If we met an error during the dentry recovery, we should not conduct checkpoint.
Otherwise, some errorneous dentry blocks overwrites the existing blocks that
contain the remaining recovery information.
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
-rw-r--r-- | fs/f2fs/recovery.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/f2fs/recovery.c b/fs/f2fs/recovery.c index 3a4b51c03321..5148d90049b0 100644 --- a/fs/f2fs/recovery.c +++ b/fs/f2fs/recovery.c @@ -403,6 +403,7 @@ out: destroy_fsync_dnodes(sbi, &inode_list); kmem_cache_destroy(fsync_entry_slab); sbi->por_doing = 0; - write_checkpoint(sbi, false); + if (!err) + write_checkpoint(sbi, false); return err; } |