diff options
author | Zhiguo Niu <zhiguo.niu@unisoc.com> | 2024-01-17 08:59:58 +0100 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2024-02-06 03:58:41 +0100 |
commit | 8e9c1a349b5e227f687fa6f047e1a785b07371ea (patch) | |
tree | d8f7d84b0feeeae0a0d3f4c58695e01822d881cf | |
parent | f2fs: compress: remove some redundant codes in f2fs_cache_compressed_page (diff) | |
download | linux-8e9c1a349b5e227f687fa6f047e1a785b07371ea.tar.xz linux-8e9c1a349b5e227f687fa6f047e1a785b07371ea.zip |
f2fs: use IS_INODE replace IS_DNODE in f2fs_flush_inline_data
Now IS_DNODE is used in f2fs_flush_inline_data and it has some problems:
1. Just only inodes may include inline data,not all direct nodes
2. When system IO is busy, it is inefficient to lock a direct node page
but not an inode page. Besides, if this direct node page is being
locked by others for IO, f2fs_flush_inline_data will be blocked here,
which will affects the checkpoint process, this is unreasonable.
So IS_INODE should be used in f2fs_flush_inline_data.
Signed-off-by: Zhiguo Niu <zhiguo.niu@unisoc.com>
Reviewed-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
-rw-r--r-- | fs/f2fs/node.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c index 9b546fd21010..1d898a16f05a 100644 --- a/fs/f2fs/node.c +++ b/fs/f2fs/node.c @@ -1919,7 +1919,7 @@ void f2fs_flush_inline_data(struct f2fs_sb_info *sbi) for (i = 0; i < nr_folios; i++) { struct page *page = &fbatch.folios[i]->page; - if (!IS_DNODE(page)) + if (!IS_INODE(page)) continue; lock_page(page); |