f2fs: check hot_data for roll-forward recovery
authorJaegeuk Kim <jaegeuk@kernel.org>
Sun, 13 Aug 2017 04:33:23 +0000 (21:33 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 27 Sep 2017 09:00:12 +0000 (11:00 +0200)
commit 125c9fb1ccb53eb2ea9380df40f3c743f3fb2fed upstream.

We need to check HOT_DATA to truncate any previous data block when doing
roll-forward recovery.

Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/f2fs/recovery.c

index cbf74f47cce8ad9005bf8486df4435c79e0b6b04..e32f349f341bf8dfa1a4f8ae4a446504c1a650cd 100644 (file)
@@ -276,7 +276,7 @@ static int check_index_in_prev_nodes(struct f2fs_sb_info *sbi,
                return 0;
 
        /* Get the previous summary */
-       for (i = CURSEG_WARM_DATA; i <= CURSEG_COLD_DATA; i++) {
+       for (i = CURSEG_HOT_DATA; i <= CURSEG_COLD_DATA; i++) {
                struct curseg_info *curseg = CURSEG_I(sbi, i);
                if (curseg->segno == segno) {
                        sum = curseg->sum_blk->entries[blkoff];