f2fs: refactor flush_nat_entries to remove costly reorganizing ops
authorJaegeuk Kim <jaegeuk@kernel.org>
Mon, 22 Sep 2014 18:40:48 +0000 (11:40 -0700)
committerJaegeuk Kim <jaegeuk@kernel.org>
Tue, 30 Sep 2014 22:30:41 +0000 (15:30 -0700)
commit309cc2b6e7ae6672ff9744fe07735ed234a8994e
tree0119d3d6d0cae0913b29ba6cfd419c089b2fb004
parent4b2fecc84655055a6a1fe9151786992ac04b56ce
f2fs: refactor flush_nat_entries to remove costly reorganizing ops

Previously, f2fs tries to reorganize the dirty nat entries into multiple sets
according to its nid ranges. This can improve the flushing nat pages, however,
if there are a lot of cached nat entries, it becomes a bottleneck.

This patch introduces a new set management flow by removing dirty nat list and
adding a series of set operations when the nat entry becomes dirty.

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/f2fs.h
fs/f2fs/node.c
fs/f2fs/node.h