Pārlūkot izejas kodu

f2fs: simplify the way of calulating next nat address

The index of segment which the next nat block is in has only one different
bit than the current one, so to get the next nat address, we can simply
alter that one bit.

Signed-off-by: Fan Li <fanofcode.li@samsung.com>
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Fan Li 8 gadi atpakaļ
vecāks
revīzija
72fdbe2efe
1 mainītis faili ar 1 papildinājumiem un 5 dzēšanām
  1. 1 5
      fs/f2fs/node.h

+ 1 - 5
fs/f2fs/node.h

@@ -224,11 +224,7 @@ static inline pgoff_t next_nat_addr(struct f2fs_sb_info *sbi,
 	struct f2fs_nm_info *nm_i = NM_I(sbi);
 	struct f2fs_nm_info *nm_i = NM_I(sbi);
 
 
 	block_addr -= nm_i->nat_blkaddr;
 	block_addr -= nm_i->nat_blkaddr;
-	if ((block_addr >> sbi->log_blocks_per_seg) % 2)
-		block_addr -= sbi->blocks_per_seg;
-	else
-		block_addr += sbi->blocks_per_seg;
-
+	block_addr ^= 1 << sbi->log_blocks_per_seg;
 	return block_addr + nm_i->nat_blkaddr;
 	return block_addr + nm_i->nat_blkaddr;
 }
 }