Re: [f2fs-dev] [RFC PATCH] f2fs: add extent cache base on rb-tree

2014-12-21 Thread Chao Yu
Hi Changman, > -Original Message- > From: Changman Lee [mailto:cm224@samsung.com] > Sent: Monday, December 22, 2014 10:03 AM > To: Chao Yu > Cc: Jaegeuk Kim; linux-f2fs-devel@lists.sourceforge.net; > linux-ker...@vger.kernel.org > Subject: Re: [RFC PATCH] f2fs: add extent cache base o

Re: [f2fs-dev] [RFC PATCH] f2fs: add extent cache base on rb-tree

2014-12-21 Thread Changman Lee
Hi Yu, Good approach. As you know, however, f2fs breaks extent itself due to COW. Unlike other filesystem like btrfs, minimum extent of f2fs could have 4KB granularity. So we would have lots of extents per inode and it could lead to overhead to manage extents. Anyway, mount option could be alter

[f2fs-dev] [PATCH 2/2] parse.f2fs: add a tool to parse IO traces made by runtime f2fs

2014-12-21 Thread Jaegeuk Kim
From: Jaegeuk Kim This patch adds parse.f2fs to retrieve process information and an amount of data reads and writes from given IO trace got by f2fs. Signed-off-by: Jaegeuk Kim --- tools/Makefile.am | 3 +- tools/f2fs_io_parse.c | 322 ++ 2

[f2fs-dev] [PATCH 1/2] dump.f2fs: dump owner of data given block address

2014-12-21 Thread Jaegeuk Kim
This patch introduces a feature to dump owner information of given block address. Signed-off-by: Jaegeuk Kim --- fsck/dump.c | 161 --- fsck/f2fs.h | 12 + fsck/fsck.h | 4 +- fsck/main.c | 2 +- fsck/mount.c | 14 +- 5 fi

[f2fs-dev] [PATCH 6/6] f2fs: avoid double lock for cp_rwsem

2014-12-21 Thread Jaegeuk Kim
The __f2fs_add_link is covered by cp_rwsem all the time. This calls init_inode_metadata, which conducts some acl operations including memory allocation with GFP_KERNEL previously. But, under memory pressure, f2fs_write_data_page can be called, which also grabs cp_mutex too. Basically, it's safe sin

[f2fs-dev] [PATCH 2/6] f2fs: add f2fs_io_tracer support

2014-12-21 Thread Jaegeuk Kim
This patch adds: o initial trace.c and trace.h with skeleton functions o Kconfig and Makefile to activate this feature Signed-off-by: Jaegeuk Kim --- fs/f2fs/Kconfig | 10 ++ fs/f2fs/Makefile | 1 + fs/f2fs/trace.c | 24 fs/f2fs/trace.h | 24 +++

[f2fs-dev] [PATCH 5/6] f2fs: activate f2fs_trace_ios

2014-12-21 Thread Jaegeuk Kim
This patch activates f2fs_trace_ios. Signed-off-by: Jaegeuk Kim --- fs/f2fs/data.c | 3 +++ fs/f2fs/file.c | 2 ++ fs/f2fs/super.c | 2 ++ 3 files changed, 7 insertions(+) diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index d86f8b1..20aa3c3 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -

[f2fs-dev] [PATCH 1/6] f2fs: use f2fs_io_info to clean up messy parameters during IO path

2014-12-21 Thread Jaegeuk Kim
This patch cleans up parameters on IO paths. The key idea is to use f2fs_io_info adding a parameter, block address, and then use this structure as parameters. Signed-off-by: Jaegeuk Kim --- fs/f2fs/checkpoint.c | 24 ++- fs/f2fs/data.c | 66 +++--

[f2fs-dev] [PATCH 4/6] f2fs: activate f2fs_trace_pid

2014-12-21 Thread Jaegeuk Kim
This patch activates f2fs_trace_pid. Signed-off-by: Jaegeuk Kim --- fs/f2fs/checkpoint.c | 3 +++ fs/f2fs/node.c | 2 ++ fs/f2fs/segment.c| 2 ++ 3 files changed, 7 insertions(+) diff --git a/fs/f2fs/checkpoint.c b/fs/f2fs/checkpoint.c index 0ac7c39..333 100644 --- a/fs/f2fs/check

[f2fs-dev] [PATCH 3/6] f2fs: add key functions for f2fs_io_tracer

2014-12-21 Thread Jaegeuk Kim
This patch adds two key functions to trace process ids and IOs. The basic idea is to 1. remain process ids, pids, in page->private. 2. show pids in IO traces. So, later we can retrieve process information according to IO traces. Signed-off-by: Jaegeuk Kim --- fs/f2fs/trace.c | 86 ++