|
@@ -3681,6 +3681,15 @@ static int build_sit_entries(struct f2fs_sb_info *sbi)
|
|
|
unsigned int old_valid_blocks;
|
|
|
|
|
|
start = le32_to_cpu(segno_in_journal(journal, i));
|
|
|
+ if (start >= MAIN_SEGS(sbi)) {
|
|
|
+ f2fs_msg(sbi->sb, KERN_ERR,
|
|
|
+ "Wrong journal entry on segno %u",
|
|
|
+ start);
|
|
|
+ set_sbi_flag(sbi, SBI_NEED_FSCK);
|
|
|
+ err = -EINVAL;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
se = &sit_i->sentries[start];
|
|
|
sit = sit_in_journal(journal, i);
|
|
|
|