f2fs: move node pages only in victim section during GC
authorChao Yu <yuchao0@huawei.com>
Wed, 27 Apr 2016 13:40:15 +0000 (21:40 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Wed, 27 Apr 2016 21:10:42 +0000 (14:10 -0700)
commitda011cc0da8cf4a60ddf4d2ae8b42902a3d71e5f
treebe9e3f689e66a59285b89dd7fab0ec29bedc67c0
parenta4a13f582c6d36b78b1c0459ee0b28f17bb2fb06
f2fs: move node pages only in victim section during GC

For foreground GC, we cache node blocks in victim section and set them
dirty, then we call sync_node_pages to flush these node pages, but
meanwhile, those node pages which does not locate in victim section
will be flushed together, so more bandwidth and continuous free space
would be occupied.

So for this condition, it's better to leave those unrelated node page
in cache for further write hit, and let CP or VM to flush them afterward.

Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/f2fs.h
fs/f2fs/gc.c
fs/f2fs/node.c