f2fs_set_bit(nid, nm_i->nid_bitmap);
}
+ if (nats_in_cursum(journal) > NAT_JOURNAL_ENTRIES) {
+ MSG(0, "\tError: f2fs_init_nid_bitmap truncate n_nats(%u) to "
+ "NAT_JOURNAL_ENTRIES(%lu)\n",
+ nats_in_cursum(journal), NAT_JOURNAL_ENTRIES);
+ journal->n_nats = cpu_to_le16(NAT_JOURNAL_ENTRIES);
+ }
+
for (i = 0; i < nats_in_cursum(journal); i++) {
block_t addr;
addr = le32_to_cpu(nat_in_journal(journal, i).block_addr);
+ if (!IS_VALID_BLK_ADDR(sbi, addr)) {
+ MSG(0, "\tError: f2fs_init_nid_bitmap: addr(%u) is invalid!!!\n", addr);
+ journal->n_nats = cpu_to_le16(i);
+ continue;
+ }
+
nid = le32_to_cpu(nid_in_journal(journal, i));
+ if (!IS_VALID_NID(sbi, nid)) {
+ MSG(0, "\tError: f2fs_init_nid_bitmap: nid(%u) is invalid!!!\n", nid);
+ journal->n_nats = cpu_to_le16(i);
+ continue;
+ }
if (addr != NULL_ADDR)
f2fs_set_bit(nid, nm_i->nid_bitmap);
}