- has_not_enough_free_secs
node_secs: 0  dent_secs: 0  freed:0  free_segments:103  reserved:104
          - f2fs_gc
             - get_victim_by_default
alloc_mode 0, gc_mode 1, max_search 2672, offset 4654, ofs_unit 1
                - do_garbage_collect
start_segno 3976, end_segno 3977   type 0
                  - is_alive
nid 22797, blkaddr 
2131882, ofs_in_node 0, version 0x8/0x0
                   - gc_data_segment 766, segno 3976, block 512/426 not alive
So, this patch fixes subtle corrupted case where node version does not match
to summary version which results in infinite loop by gc.
Reported-by: Yunlei He <heyunlei@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
 
        get_node_info(sbi, nid, dni);
 
        if (sum->version != dni->version) {
-               f2fs_put_page(node_page, 1);
-               return false;
+               f2fs_msg(sbi->sb, KERN_WARNING,
+                               "%s: valid data with mismatched node version.",
+                               __func__);
+               set_sbi_flag(sbi, SBI_NEED_FSCK);
        }
 
        *nofs = ofs_of_node(node_page);