[f2fs-dev] [PATCH 5/7] f2fs: introduce force_lfs mount option

2016-06-08 Thread Jaegeuk Kim
This mount option is to enable original log-structured filesystem forcefully. So, there should be no random writes for main area. Especially, this supports host-managed SMR device. Signed-off-by: Jaegeuk Kim --- Documentation/filesystems/f2fs.txt | 3 +++ fs/f2fs/data.c |

[f2fs-dev] [PATCH 4/7] f2fs: skip clean segment for gc

2016-06-08 Thread Jaegeuk Kim
If a segment in a section is clean or prefreed, we don't need to get its summary and do gc. Signed-off-by: Jaegeuk Kim --- fs/f2fs/gc.c | 4 1 file changed, 4 insertions(+) diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c index 67fd285..e1d274c 100644 --- a/fs/f2fs/gc.c +++ b/fs/f2fs/gc.c @@ -795,

[f2fs-dev] [PATCH 6/7] f2fs: fix deadlock in add_link failure

2016-06-08 Thread Jaegeuk Kim
mkdirsync_dirty_inode - init_inode_metadata - lock_page(node) - make_empty_dir - filemap_fdatawrite() - do_writepages - lock_page(data) - write_page(

[f2fs-dev] [PATCH 2/7] f2fs: avoid reverse IO order for NODE and DATA

2016-06-08 Thread Jaegeuk Kim
There is a data race between allocate_data_block() and f2fs_sbumit_page_mbio(), which incur unnecessary reversed bio submission. Signed-off-by: Jaegeuk Kim --- fs/f2fs/f2fs.h| 1 + fs/f2fs/segment.c | 6 ++ fs/f2fs/super.c | 2 ++ 3 files changed, 9 insertions(+) diff --git a/fs/f2fs/

[f2fs-dev] [PATCH 3/7] f2fs: drop any block plugging

2016-06-08 Thread Jaegeuk Kim
In f2fs, we don't need to keep block plugging for NODE and DATA writes, since we already merged bios as much as possible. Signed-off-by: Jaegeuk Kim --- fs/f2fs/checkpoint.c | 4 fs/f2fs/data.c | 17 ++--- fs/f2fs/gc.c | 5 - fs/f2fs/segment.c| 7 +--

[f2fs-dev] [PATCH 7/7] f2fs: don't need to flush unlinked dentry pages

2016-06-08 Thread Jaegeuk Kim
We don't need to flush any dentry pages used by unlinked directory. They will be truncated by f2fs_evict_inode. Signed-off-by: Jaegeuk Kim --- fs/f2fs/checkpoint.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fs/f2fs/checkpoint.c b/fs/f2fs/checkpoint.c index 4179c7b..e67

[f2fs-dev] [PATCH 1/7] f2fs: set mapping error for EIO

2016-06-08 Thread Jaegeuk Kim
If EIO occurred, we need to set all the mapping to avoid any further IOs. Signed-off-by: Jaegeuk Kim --- fs/f2fs/data.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index c9d6fe2..30dc448 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -

[f2fs-dev] [PATCH] mkfs.f2fs: ZBC device support

2016-06-08 Thread Jaegeuk Kim
This patch adds "-m" option to configure ZBC device. This is to support host-managed SMR device and configure some major features and on-disk layout in f2fs. Signed-off-by: Jaegeuk Kim --- include/f2fs_fs.h | 35 +++ lib/Makefile.am | 2 +- lib/libf2fs.c | 17 ++ lib