]> git.baikalelectronics.ru Git - kernel.git/commit
f2fs: clear radix tree dirty tag of pages whose dirty flag is cleared
authorDaeho Jeong <daeho.jeong@samsung.com>
Mon, 11 Sep 2017 07:30:28 +0000 (16:30 +0900)
committerJaegeuk Kim <jaegeuk@kernel.org>
Tue, 12 Sep 2017 04:32:38 +0000 (21:32 -0700)
commit0abd8e70d24b665dd00972d4a259e05528cbf4c6
tree9c0f4ff0c0c5569a562e4baba5bcd2ea8489a2be
parentb3a97a2a9a7b2d50bcf13d32857cd6f5695c6b65
f2fs: clear radix tree dirty tag of pages whose dirty flag is cleared

On a senario like writing out the first dirty page of the inode
as the inline data, we only cleared dirty flags of the pages, but
didn't clear the dirty tags of those pages in the radix tree.

If we don't clear the dirty tags of the pages in the radix tree, the
inodes which contain the pages will be marked with I_DIRTY_PAGES again
and again, and writepages() for the inodes will be invoked in every
writeback period. As a result, nothing will be done in every
writepages() for the inodes and it will just consume CPU time
meaninglessly.

Signed-off-by: Daeho Jeong <daeho.jeong@samsung.com>
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/dir.c
fs/f2fs/inline.c