Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1339326 > unrolled thread

[PATCH 3/5] f2fs: try to flush inode after merging inline data

Started byChao Yu <chao2.yu@samsung.com>
First post2016-02-22 11:40 +0100
Last post2016-02-22 11:40 +0100
Articles 1 — 1 participant

Back to article view | Back to linux.kernel


Contents

  [PATCH 3/5] f2fs: try to flush inode after merging inline data Chao Yu <chao2.yu@samsung.com> - 2016-02-22 11:40 +0100

#1339326 — [PATCH 3/5] f2fs: try to flush inode after merging inline data

FromChao Yu <chao2.yu@samsung.com>
Date2016-02-22 11:40 +0100
Subject[PATCH 3/5] f2fs: try to flush inode after merging inline data
Message-ID<r4W4h-4kw-9@gated-at.bofh.it>
When flushing node pages, if current node page is an inline inode page, we
will try to merge inline data from data page into inline inode page, then
skip flushing current node page, it will decrease the number of nodes to
be flushed in batch in this round, which may lead to worse performance.

This patch gives a chance to flush just merged inline inode pages for
performance.

Signed-off-by: Chao Yu <chao2.yu@samsung.com>
---
 fs/f2fs/node.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index 966176b..82cde7a 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -1275,6 +1275,7 @@ next_step:
 			 * If an fsync mode,
 			 * we should not skip writing node pages.
 			 */
+lock_node:
 			if (ino && ino_of_node(page) == ino)
 				lock_page(page);
 			else if (!trylock_page(page))
@@ -1298,7 +1299,7 @@ continue_unlock:
 				clear_inline_node(page);
 				unlock_page(page);
 				flush_inline_data(sbi, ino_of_node(page));
-				continue;
+				goto lock_node;
 			}
 
 			f2fs_wait_on_page_writeback(page, NODE, true);
-- 
2.7.0

[toc] | [standalone]


Back to top | Article view | linux.kernel


csiph-web