static inline bool IS_VALID_NID(struct f2fs_sb_info *sbi, u32 nid)
{
- return (nid <= (NAT_ENTRY_PER_BLOCK *
+ return (nid < (NAT_ENTRY_PER_BLOCK *
le32_to_cpu(F2FS_RAW_SUPER(sbi)->segment_count_nat)
<< (sbi->log_blocks_per_seg - 1)));
}
static inline bool IS_VALID_BLK_ADDR(struct f2fs_sb_info *sbi, u32 addr)
{
+ if (addr == NULL_ADDR || addr == NEW_ADDR)
+ return 1;
+
if (addr >= le64_to_cpu(F2FS_RAW_SUPER(sbi)->block_count) ||
addr < SM_I(sbi)->main_blkaddr) {
DBG(1, "block addr [0x%x]\n", addr);