Re: [PATCH 1/1] f2fs: remove unneeded version.h header file from f2fs.h

2012-11-27 Thread Jaegeuk Kim
gt; diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h > index 7aa70b5..d3f5a70 100644 > --- a/fs/f2fs/f2fs.h > +++ b/fs/f2fs/f2fs.h > @@ -14,7 +14,6 @@ > #include > #include > #include > -#include > #include > #include > #include -- Jaegeuk Kim Samsung sign

Re: [PATCH 4/5] f2fs: remove nid_free from f2fs_new_inode

2013-03-17 Thread Jaegeuk Kim
fter iput() is completed. Otherwise, another f2fs_new_inode() is able to get this just-released nid before iput(). In such a case, insert_inode_locked() can return -EBUSY or iput() can free this newly allocated inode due to the i_lock race. Thanks, > return ERR_PTR(err); > } > -- Jaegeuk Kim Samsung signature.asc Description: This is a digitally signed message part

Re: [PATCH 5/5] f2fs: avoid BUG_ON from check_nid_range and update return path in do_read_inode

2013-03-17 Thread Jaegeuk Kim
nge(sbi, inode->i_ino)) { > + f2fs_msg(inode->i_sb, KERN_ERR, "bad inode number: %lu", > + (unsigned long) inode->i_ino); > + return -EINVAL; > + } > > node_page = get_node_page(sbi, inode->i_ino); > if (IS_ERR(node_page)) -- Jaegeuk Kim Samsung signature.asc Description: This is a digitally signed message part

Re: [PATCH 5/5] f2fs: avoid BUG_ON from check_nid_range and update return path in do_read_inode

2013-03-17 Thread Jaegeuk Kim
2013-03-18 (월), 14:23 +0900, Namjae Jeon: > 2013/3/18, Jaegeuk Kim : > > 2013-03-17 (일), 17:27 +0900, Namjae Jeon: > >> From: Namjae Jeon > >> > >> In function check_nid_range, there is no need to trigger BUG_ON and make > >> kernel stop. > >&

[PATCH] f2fs: fix to unlock node page when it was truncated

2013-03-17 Thread Jaegeuk Kim
If the node page was truncated, its block address became zero. This means that we don't need to write the node page, but have to unlock NODE_WRITE, decrease the number of dirty node pages, and then unlock_page before returning the f2fs_write_node_page with zero. Signed-off-by: Jaegeu

[PATCH] f2fs: reduce unncessary locking pages during read

2013-03-17 Thread Jaegeuk Kim
s_readpage returns unlocked page, or released page too in error cases. - Its caller should handle read error, -EIO, after locking the page, which indicates read completion. - Its caller should check PageUptodate after grab_cache_page. Signed-off-by: Changman Lee Signed-off-by: Jaegeuk Kim --

[PATCH] f2fs: should check the node page was truncated first

2013-03-17 Thread Jaegeuk Kim
Currently, f2fs doesn't reclaim any node pages. However, if we found that a node page was truncated by checking its block address with zero during f2fs_write_node_page, we should not skip that node page and return zero to reclaim it. Signed-off-by: Jaegeuk Kim --- fs/f2fs/node.c

[PATCH 12/19] f2fs: scan next nat page to reuse free nids in there

2013-03-17 Thread Jaegeuk Kim
n the node_inode's address space. This means that we can retain lots of clean pages in the main memory, which induces mm's reclaiming overhead. Signed-off-by: Jaegeuk Kim --- fs/f2fs/node.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fs/f2fs/node.c b/fs/f2

[PATCH 13/19] f2fs: fix return value of releasepage for node and data

2013-03-17 Thread Jaegeuk Kim
If the return value of releasepage is equal to zero, the page cannot be reclaimed. Instead, we should return 1 in order to reclaim clean pages. Signed-off-by: Jaegeuk Kim --- fs/f2fs/data.c | 4 +++- fs/f2fs/node.c | 13 +++-- 2 files changed, 6 insertions(+), 11 deletions(-) diff

[PATCH] f2fs: fix not to allocate max_nid

2013-03-17 Thread Jaegeuk Kim
st NAT page - scan_nat_page can add 100 ~ 200 nids -> Bug here! So, when scanning an NAT page, we should check each candidate whether it is over max_nid or not. Signed-off-by: Jaegeuk Kim --- fs/f2fs/node.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c

[PATCH] f2fs: fix to call WRITE_FLUSH at the end of fsync

2013-03-17 Thread Jaegeuk Kim
The fsync call should be ended after flushing the in-device caches. Signed-off-by: Jaegeuk Kim --- fs/f2fs/file.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c index 269645e..ff018a4 100644 --- a/fs/f2fs/file.c +++ b/fs/f2fs/file.c @@ -13,6 +13,7

Re: [PATCH] f2fs: fix not to allocate max_nid

2013-03-18 Thread Jaegeuk Kim
2013-03-18 (월), 18:29 +0900, Namjae Jeon: > 2013/3/18, Jaegeuk Kim : > > The build_free_nid should not add free nids over nm_i->max_nid. > > But, there was a hole that invalid free nid was added by the following > > scenario. > > > > Let's suppose nm_i->

Re: [PATCH 13/19] f2fs: fix return value of releasepage for node and data

2013-03-18 Thread Jaegeuk Kim
2013-03-18 (월), 20:39 +0900, Namjae Jeon: > 2013/3/18, Jaegeuk Kim : > > If the return value of releasepage is equal to zero, the page cannot be > > reclaimed. > > Instead, we should return 1 in order to reclaim clean pages. > > > > Signed-off-by: Jaegeuk Kim

Re: [PATCH] f2fs: reduce unncessary locking pages during read

2013-03-19 Thread Jaegeuk Kim
return ERR_PTR(-EIO); > > } > > return page; > > } > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majord...@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- Jaegeuk Kim Samsung signature.asc Description: This is a digitally signed message part

Re: [PATCH 1/6] f2fs: optimize get node page readahead part

2013-02-03 Thread Jaegeuk Kim
o care about real existence. Let's get and check the status of the page without any locks. Thanks, -- Jaegeuk Kim Samsung signature.asc Description: This is a digitally signed message part

Re: [PATCH] f2fs: add compat_ioctl to provide backward compatability

2013-02-04 Thread Jaegeuk Kim
{ > > .llseek = generic_file_llseek, > > .read = do_sync_read, > > @@ -655,6 +672,9 @@ const struct file_operations f2fs_file_operations = { > > .fsync = f2fs_sync_file, > > .fallocate = f2fs_fallocate, > > .unlocked

Re: [PATCH] f2fs: add compat_ioctl to provide backward compatability

2013-02-04 Thread Jaegeuk Kim
2013-02-05 (화), 16:02 +0900, Namjae Jeon: > 2013/2/5, Jaegeuk Kim : > > Hi, > > > > 2013-02-05 (화), 14:28 +0900, Namjae Jeon: > >> Hi Jaegeuk. > >> > >> Oops!, I was missing include header. > >> Sorry, I will send v2 patch again. > >

Re: [PATCH] f2fs: fix to name f2fs GC task as per partition instead of per device

2013-02-05 Thread Jaegeuk Kim
c_thread_func, sbi, > - "f2fs_gc-%s", dev_name(sbi->sb->s_bdi->dev)); > + "f2fs_gc-%u:%u", MAJOR(dev), MINOR(dev)); > if (IS_ERR(gc_th->f2fs_gc_task)) { > kfree(gc_th); > sbi->gc_thread = NULL; -- Jaegeuk Kim Samsung signature.asc Description: This is a digitally signed message part

Re: [PATCH] f2fs: fix to name f2fs GC task as per partition instead of per device

2013-02-06 Thread Jaegeuk Kim
Hi, 2013-02-06 (수), 13:59 +0900, Namjae Jeon: > 2013/2/6, Jaegeuk Kim : > > Hi, > > > > How about this? > > > > 2013-02-05 (화), 23:24 +0900, Namjae Jeon: > >> From: Namjae Jeon > >> > >> After the commit 2184ad190a79ae2b40b5f5db1fbde5c2

[GIT PULL] f2fs fixes for v3.8-rc7

2013-02-06 Thread Jaegeuk Kim
cessary gc option check and balance_fs Jaegeuk Kim (6): f2fs: prevent checkpoint once any IO failure is detected f2fs: cover global locks for reserve_new_block f2fs: remove the use of page_cache_release f2fs: avoid balanc_fs during evict_inode f2fs: clarify and enhance t

Re: [GIT PULL] f2fs fixes for v3.8-rc7

2013-02-07 Thread Jaegeuk Kim
es. I already looked away once just because > it's a new filesystem, but enough is enough. This is way way WAY too > late to start sendign "enhancements". Seriously. > > Send them for the next merge window. Not just before rc7. > > Linus > > O

Re: [GIT PULL] f2fs fixes for v3.8-rc7

2013-02-07 Thread Jaegeuk Kim
veral patches to that sucker; > commits f3d9d7e..10e4e72 in vfs.git. I can send them to f2fs tree or > have them go in vfs one, but this stuff needs to be dealt with. Fake > struct dentry on stack is a bad thing with capital Hell No... Hi Al, Could you send the patches to me? I'

Re: [PATCH] To add NULL pointer check

2013-04-02 Thread Jaegeuk Kim
if - mapping->a_ops->writepage - is NULL. Signed-off-by: P J P Signed-off-by: Jaegeuk Kim --- fs/f2fs/data.c | 4 1 file changed, 4 insertions(+) diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index 47a2d7c..cf9ff5f 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -559,6 +559,10 @@ s

Re: [PATCH] To add NULL pointer check

2013-04-03 Thread Jaegeuk Kim
Hi, 2013-04-03 (수), 12:30 +0530, P J P: > +-- On Wed, 3 Apr 2013, Jaegeuk Kim wrote --+ > | diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c > | index 47a2d7c..cf9ff5f 100644 > | --- a/fs/f2fs/data.c > | +++ b/fs/f2fs/data.c > | @@ -559,6 +559,10 @@ static int f2fs_write

Re: [PATCH 5/9 v2] f2fs: change GC bitmaps to apply the section granularity

2013-04-03 Thread Jaegeuk Kim
Hi, Agreed, and resolved all the issues like below. Thanks, change log from v1: o change local variable position o change function shape o add NULL_SECNO From f1802031a467751df6475bd3f56300137fd2ac34 Mon Sep 17 00:00:00 2001 From: Jaegeuk Kim Date: Sun, 31 Mar 2013 13:26:03 +0900 Subject

Re: [PATCH 3/9 v2] f2fs: remove redundant lock_page calls

2013-04-03 Thread Jaegeuk Kim
Hi, Agreed, and send v2. Change log from v1: o remain read_node_page and remove the lock part From 04006aecac2882c574fe8a7de926bc52c73a8ad1 Mon Sep 17 00:00:00 2001 From: Jaegeuk Kim Date: Sun, 31 Mar 2013 12:47:20 +0900 Subject: [PATCH] f2fs: remove redundant lock_page calls Cc: linux-fsde

Re: [PATCH] To add NULL pointer check

2013-04-03 Thread Jaegeuk Kim
Hi, 2013-04-03 (수), 14:43 +0530, P J P: > +-- On Wed, 3 Apr 2013, Jaegeuk Kim wrote --+ > | I'm confusing the question because f2fs doesn't use generic_writepages(), > | since f2fs_write_data_pages() is linked to a_ops->writepages. In > | do_writepages(), always f

[PATCH] f2fs: introduce a new global lock scheme

2013-04-03 Thread Jaegeuk Kim
ckpoint. 5. block_operations() - call mutex_lock_all() - sync_dirty_dir_inodes() - grab node_write - sync_node_pages() Note that, the pairs of mutex_lock_op()/mutex_unlock_op() and mutex_lock_all()/mutex_unlock_all() should be used together. Signed-off-by: Jaegeuk Kim --- fs/f2fs/checkpo

Re: [PATCH v2] f2fs: introduce a new global lock scheme

2013-04-04 Thread Jaegeuk Kim
2001 From: Jaegeuk Kim Date: Thu, 22 Nov 2012 16:21:29 +0900 Subject: [PATCH] f2fs: introduce a new global lock scheme Cc: linux-fsde...@vger.kernel.org, linux-kernel@vger.kernel.org, linux-f2fs-de...@lists.sourceforge.net In the previous version, f2fs uses global locks according to the usage

Re: [PATCH 1/3] f2fs: avoid redundant call to has_not_enough_free_secs in f2fs_gc

2013-01-30 Thread Jaegeuk Kim
amp;& has_not_enough_free_secs(sbi)) Thank you. :) > gc_type = FG_GC; > > if (!__get_victim(sbi, &segno, gc_type, NO_CHECK_TYPE)) -- Jaegeuk Kim Samsung signature.asc Description: This is a digitally signed message part

[GIT PULL] f2fs updates for v3.9 merge window

2013-02-24 Thread Jaegeuk Kim
unnecessary gc option check and balance_fs Jaegeuk Kim (8): f2fs: prevent checkpoint once any IO failure is detected f2fs: cover global locks for reserve_new_block f2fs: remove the use of page_cache_release f2fs: avoid balanc_fs during evict_inode f2fs: clarify and enhance the

[PATCH 1/2] f2fs: read with READ_SYNC when getting dnode page

2013-02-25 Thread Jaegeuk Kim
It must be set READ_SYNC not READA. Signed-off-by: Jaegeuk Kim --- fs/f2fs/node.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c index e275218..185454f 100644 --- a/fs/f2fs/node.c +++ b/fs/f2fs/node.c @@ -930,7 +930,7 @@ repeat: if

[PATCH 2/2] f2fs: introduce readahead mode of node pages

2013-02-25 Thread Jaegeuk Kim
ahead */ LOOKUP_NODE_RA, /* * look up a node with readahead called * by get_datablock_ro. */ } Signed-off-by: Jaegeuk Kim --- fs/f2fs/data.c | 12 ++-- fs/f2fs/f2fs.h | 12 fs/f2fs/file.c

Re: [PATCH 1/2] f2fs: read with READ_SYNC when getting dnode page

2013-02-26 Thread Jaegeuk Kim
Hi, 2013-02-26 (화), 18:35 +0900, Namjae Jeon: > 2013/2/26, Jaegeuk Kim : > > It must be set READ_SYNC not READA. > Hi Jaegeuk. > Could you please elaborate more? > Why we need to change READA to READ_SYNC over here, when the purpose > was to read the node page in READ ahead

Re: [PATCH 2/2] f2fs: introduce readahead mode of node pages

2013-02-26 Thread Jaegeuk Kim
In order to do that, we should check additional conditions like i and level together with mode == LOOKUP_NODE. So, I'm not sure how much it makes clearer by using LOOKUP_NODE explicitly. It seems fine to me, since we can just use LOOKUP_NODE to distinguish it from the other modes. Any thought? -- Jaegeuk Kim Samsung signature.asc Description: This is a digitally signed message part

RE: [PATCH 16/16 v2] f2fs: update Kconfig and Makefile

2012-10-22 Thread Jaegeuk Kim
> On Tue, Oct 23, 2012 at 11:33:28AM +0900, Jaegeuk Kim wrote: > > +config F2FS_STAT_FS > > + bool "F2FS Status Information" > > + depends on F2FS_FS > > + default y > > + help > > + /proc/fs/f2fs/ contains information about partitions

RE: [PATCH 07/16 v2] f2fs: add segment operations

2012-10-22 Thread Jaegeuk Kim
> Hi. > > Building f2fs for ARM gives the following error: > > CC fs/f2fs/segment.o > CC fs/f2fs/recovery.o > fs/f2fs/segment.c: In function 'build_sit_info': > fs/f2fs/segment.c:1399:2: error: implicit declaration of function 'vzalloc' > [-Werror=implicit- > function-declaration]

RE: [PATCH 02/16 v2] f2fs: add on-disk layout

2012-10-22 Thread Jaegeuk Kim
> -Original Message- > From: NeilBrown [mailto:ne...@suse.de] > Sent: Tuesday, October 23, 2012 12:47 PM > To: Jaegeuk Kim > Cc: linux-fsde...@vger.kernel.org; linux-kernel@vger.kernel.org; > gre...@linuxfoundation.org; > v...@zeniv.linux.org.uk; a...@arndb.de

RE: [PATCH 02/16 v2] f2fs: add on-disk layout

2012-10-23 Thread Jaegeuk Kim
> 2012/10/23 Jaegeuk Kim : > > This adds a header file describing the on-disk layout of f2fs. > > > > Signed-off-by: Changman Lee > > Signed-off-by: Chul Lee > > Signed-off-by: Jaegeuk Kim > > --- > > include/linux/f2fs_fs.h | 362 > > +++

RE: [PATCH 04/16 v2] f2fs: add super block operations

2012-10-23 Thread Jaegeuk Kim
[snip] > > + sb->s_op = &f2fs_sops; > > + sb->s_xattr = f2fs_xattr_handlers; > > + sb->s_magic = F2FS_SUPER_MAGIC; > > + sb->s_fs_info = sbi; > > and s_time_gran? Ok, I'll check this. Thanks, > > Marco --- Jae

RE: [PATCH 08/16 v2] f2fs: add file operations

2012-10-23 Thread Jaegeuk Kim
gt; + } > > +} > > +#else > > +#define __setattr_copy setattr_copy > > +#endif > > + > > +int f2fs_setattr(struct dentry *dentry, struct iattr *attr) > > +{ > > + struct inode *inode = dentry->d_inode; > > + struct f2fs_inode_info *f

RE: [PATCH 11/16 v2] f2fs: add inode operations for special inodes

2012-10-23 Thread Jaegeuk Kim
> -Original Message- > From: Marco Stornelli [mailto:marco.storne...@gmail.com] > Sent: Tuesday, October 23, 2012 4:02 PM > To: Jaegeuk Kim > Cc: linux-fsde...@vger.kernel.org; linux-kernel@vger.kernel.org; > gre...@linuxfoundation.org; > v...@zeniv.linux.org.

RE: [PATCH 11/16 v2] f2fs: add inode operations for special inodes

2012-10-23 Thread Jaegeuk Kim
> 2012/10/23 Jaegeuk Kim : > > > >> -Original Message- > >> From: Marco Stornelli [mailto:marco.storne...@gmail.com] > >> Sent: Tuesday, October 23, 2012 4:02 PM > >> To: Jaegeuk Kim > >> Cc: linux-fsde...@vger.kernel.org; linux-ke

RE: [PATCH 00/16 v2] f2fs: introduce flash-friendly file system

2012-10-23 Thread Jaegeuk Kim
> On Tue, Oct 23, 2012 at 11:21:53AM +0900, Jaegeuk Kim wrote: > > mkfs.f2fs > > = > > > > The file system formatting tool, "mkfs.f2fs", is available from the > > following > > download page: http://sourceforge.net/projects/

RE: [PATCH 00/16 v2] f2fs: introduce flash-friendly file system

2012-10-23 Thread Jaegeuk Kim
> On Tue, Oct 23, 2012 at 11:26:59AM -0700, Greg KH wrote: > > On Tue, Oct 23, 2012 at 11:21:53AM +0900, Jaegeuk Kim wrote: > > > mkfs.f2fs > > > = > > > > > > The file system formatting tool, "mkfs.f2fs", is available from th

RE: [PATCH 00/16 v2] f2fs: introduce flash-friendly file system

2012-10-23 Thread Jaegeuk Kim
> -Original Message- > From: 'Greg KH' [mailto:gre...@linuxfoundation.org] > Sent: Wednesday, October 24, 2012 12:01 PM > To: Jaegeuk Kim > Cc: linux-fsde...@vger.kernel.org; linux-kernel@vger.kernel.org; > v...@zeniv.linux.org.uk; > a...@arndb.de; ty..

RE: [PATCH 00/16 v2] f2fs: introduce flash-friendly file system

2012-10-23 Thread Jaegeuk Kim
> On Wed, Oct 24, 2012 at 08:18:36AM +0900, Jaegeuk Kim wrote: > > > On Tue, Oct 23, 2012 at 11:26:59AM -0700, Greg KH wrote: > > > > On Tue, Oct 23, 2012 at 11:21:53AM +0900, Jaegeuk Kim wrote: > > > > > mkfs.f2fs > > > > > = > >

RE: [PATCH 0/3] f2fs: move proc files to debugfs

2012-10-25 Thread Jaegeuk Kim
done some works additionally based on the patches. Furthermore, for readability, I merged 3 stat files into one file, and let it show all the superblocks together, no breakdown per partition. I'll submit v3-series applying these changes soon. Thanks, > > Oh, the third patch is buggy, don

RE: [PATCH 01/16 v2] f2fs: add document

2012-10-25 Thread Jaegeuk Kim
I'll enhance the document as much as possible according to your recommendation. Thank you for intensive review. :) --- Jaegeuk Kim Samsung > On Tue, 2012-10-23 at 11:25 +0900, Jaegeuk Kim wrote: > > This adds a document describing the mount options, proc entries, usage, and >

RE: [PATCH 02/16 v2] f2fs: add on-disk layout

2012-10-25 Thread Jaegeuk Kim
number */ > > + __le32 volume_serial_number;/* VSN is optional field */ > > Usually, it is used 128-bits UUID for serial number. Why do you use > __le32 as volume_serial_number? Ok, I'll change. [snip] > > +/* > > + * For directory operations > > + */

RE: [PATCH 02/16 v2] f2fs: add on-disk layout

2012-10-26 Thread Jaegeuk Kim
> On Friday 26 October 2012, Jaegeuk Kim wrote: > > > > > + > > > > +#define F2FS_ROOT_INO(sbi) (sbi->root_ino_num) > > > > +#define F2FS_NODE_INO(sbi) (sbi->node_ino_num) > > > > +#define F2FS_META_INO(sbi) (sb

RE: [PATCH 02/16 v2] f2fs: add on-disk layout

2012-10-26 Thread Jaegeuk Kim
2012-10-26 (금), 16:48 +0400, Vyacheslav Dubeyko: > On Fri, 2012-10-26 at 12:31 +0900, Jaegeuk Kim wrote: > > [snip] > > > > +#define F2FS_SUPER_MAGIC 0xF2F52010 > > > > +#define F2FS_SUPER_OFFSET 0 /* start sector # for > > >

RE: [PATCH 16/17] f2fs: move proc files to debugfs

2012-10-31 Thread Jaegeuk Kim
My apologies... I should have examined the patch itself more carefully. I'll resend. Thanks, --- Jaegeuk Kim Samsung > -Original Message- > From: Greg KH [mailto:gre...@linuxfoundation.org] > Sent: Thursday, November 01, 2012 12:52 AM > To: Jaegeuk Kim

[PATCH 16/17 v2] f2fs: move proc files to debugfs

2012-10-31 Thread Jaegeuk Kim
that was present in the proc files, but this should be fixed up in the future. Signed-off-by: Greg Kroah-Hartman [jaegeuk@samsung.com: merged 3 debugfs entries into a *status* entry] Signed-off-by: Jaegeuk Kim --- fs/f2fs/debug.c | 361 +++ 1

[PATCH 00/16 v3] f2fs: introduce flash-friendly file system

2012-10-31 Thread Jaegeuk Kim
.f2fs = The file system formatting tool, "mkfs.f2fs", is available from the following download page: http://sourceforge.net/projects/f2fs-tools/ Usage = If you'd like to experience f2fs, simply: # mkfs.f2fs /dev/sdb1 # mount -t f2fs /dev/sdb1 /mnt/f2fs Short log ==

[PATCH 01/17] f2fs: add document

2012-10-31 Thread Jaegeuk Kim
This adds a document describing the mount options, proc entries, usage, and design of Flash-Friendly File System, namely F2FS. Signed-off-by: Jaegeuk Kim --- Documentation/filesystems/00-INDEX |2 + Documentation/filesystems/f2fs.txt | 417 2 files

[PATCH 02/17] f2fs: add on-disk layout

2012-10-31 Thread Jaegeuk Kim
This adds a header file describing the on-disk layout of f2fs. Signed-off-by: Changman Lee Signed-off-by: Chul Lee Signed-off-by: Jaegeuk Kim --- include/linux/f2fs_fs.h | 410 +++ 1 file changed, 410 insertions(+) create mode 100644 include/linux

[PATCH 04/17] f2fs: add super block operations

2012-10-31 Thread Jaegeuk Kim
This adds the implementation of superblock operations for f2fs, which includes - init_f2fs_fs/exit_f2fs_fs - f2fs_mount - super_operations of f2fs Signed-off-by: Jaegeuk Kim --- fs/f2fs/super.c | 656 +++ 1 file changed, 656 insertions

[PATCH 05/17] f2fs: add checkpoint operations

2012-10-31 Thread Jaegeuk Kim
order to provide an address space for meta pages, f2fs_sb_info has a special inode, namely meta_inode. This patch also adds the address space operations for meta_inode. Signed-off-by: Chul Lee Signed-off-by: Jaegeuk Kim --- fs/f2fs/checkpoint.c | 792

[PATCH 06/17] f2fs: add node operations

2012-10-31 Thread Jaegeuk Kim
management such as getting, allocating, and truncating node blocks to index data. - In order to cache node blocks in memory, F2FS has a node_inode with an address space for node pages. This patch also adds the address space operations for node_inode. Signed-off-by: Jaegeuk Kim --- fs/f2fs/node.c

[PATCH 08/17] f2fs: add file operations

2012-10-31 Thread Jaegeuk Kim
This adds memory operations and file/file_inode operations. - F2FS supports fallocate(), mmap(), fsync(), and basic ioctl(). Signed-off-by: Jaegeuk Kim --- fs/f2fs/file.c | 637 1 file changed, 637 insertions(+) create mode 100644 fs

[PATCH 09/17] f2fs: add address space operations for data

2012-10-31 Thread Jaegeuk Kim
This adds address space operations for data. - F2FS supports readpages(), writepages(), and direct_IO(). - Because of out-of-place writes, f2fs_direct_IO() does not write data in place. Signed-off-by: Jaegeuk Kim --- fs/f2fs/data.c | 701

[PATCH 10/17] f2fs: add core inode operations

2012-10-31 Thread Jaegeuk Kim
This adds core functions to get, read, write, and evict an inode. Signed-off-by: Changman Lee Signed-off-by: Jaegeuk Kim --- fs/f2fs/inode.c | 266 +++ 1 file changed, 266 insertions(+) create mode 100644 fs/f2fs/inode.c diff --git a/fs

[PATCH 11/17] f2fs: add inode operations for special inodes

2012-10-31 Thread Jaegeuk Kim
This adds inode operations for directory, symlink, and special inodes. Signed-off-by: Changman Lee Signed-off-by: Jaegeuk Kim --- fs/f2fs/namei.c | 504 +++ 1 file changed, 504 insertions(+) create mode 100644 fs/f2fs/namei.c diff --git a

[PATCH 12/17] f2fs: add core directory operations

2012-10-31 Thread Jaegeuk Kim
This adds core functions to find, add, delete, and link dentries. Signed-off-by: Jaegeuk Kim --- fs/f2fs/dir.c | 674 fs/f2fs/hash.c | 98 2 files changed, 772 insertions(+) create mode 100644 fs/f2fs/dir.c create mode

[PATCH 13/17] f2fs: add xattr and acl functionalities

2012-10-31 Thread Jaegeuk Kim
This implements xattr and acl functionalities. - F2FS uses a node page to contain use extended attributes. Signed-off-by: Changman Lee Signed-off-by: Jaegeuk Kim --- fs/f2fs/acl.c | 465 +++ fs/f2fs/acl.h | 57 +++ fs/f2fs/xattr.c

[PATCH 14/17] f2fs: add garbage collection functions

2012-10-31 Thread Jaegeuk Kim
of on-demand cleaning, F2FS should move the data right away. - In order to identify valid blocks in a victim segment, F2FS scans the bitmap of the segment managed as an SIT entry. Signed-off-by: Jaegeuk Kim --- fs/f2fs/gc.c | 742 ++ fs

[PATCH 15/17] f2fs: add recovery routines for roll-forward

2012-10-31 Thread Jaegeuk Kim
on of next node block in each direct node block for reconstructing the chain of node blocks during the recovery. - In order to enhance the performance, F2FS keeps a "dentry" mark also in direct node blocks. If this is set during the recovery, F2FS replays adding a dentry. Signed

[PATCH 16/17] f2fs: move proc files to debugfs

2012-10-31 Thread Jaegeuk Kim
files, but this should be fixed up in the future. Signed-off-by: Greg Kroah-Hartman Acked-by: Jaegeuk Kim --- fs/f2fs/debug.c | 361 +++ 1 file changed, 361 insertions(+) create mode 100644 fs/f2fs/debug.c diff --git a/fs/f2fs/debug.c b/fs

[PATCH 17/17] f2fs: update Kconfig and Makefile

2012-10-31 Thread Jaegeuk Kim
This adds Makefile and Kconfig for f2fs, and updates Makefile and Kconfig files in the fs directory. In addition, add F2FS_SUPER_MAGIC in magic.h. Signed-off-by: Jaegeuk Kim --- fs/Kconfig |1 + fs/Makefile|1 + fs/f2fs/Kconfig| 52

[PATCH 07/17] f2fs: add segment operations

2012-10-31 Thread Jaegeuk Kim
functions to write data, node, and meta pages. Since LFS basically produces a series of sequential writes, F2FS merges sequential bios with a single one as much as possible to reduce the IO scheduling overhead. Signed-off-by: Jaegeuk Kim --- fs/f2fs/segment.c | 1798

[PATCH 1/5] f2fs: add flags for inline xattrs

2013-08-26 Thread Jaegeuk Kim
This patch adds basic inode flags for inline xattrs, F2FS_INLINE_XATTR, and add a mount option, inline_xattr, which is enabled when xattr is set. If the mount option is enabled, all the files are marked with the inline_xattrs flag. Signed-off-by: Jaegeuk Kim --- fs/f2fs/f2fs.h | 18

[PATCH 3/5] f2fs: introduce __find_xattr for readability

2013-08-26 Thread Jaegeuk Kim
The __find_xattr is to search the wanted xattr entry starting from the base_addr. If not found, the returned entry is the last empty xattr entry that can be allocated newly. Signed-off-by: Jaegeuk Kim --- fs/f2fs/xattr.c | 46 +- fs/f2fs/xattr.h | 3

[PATCH 5/5] f2fs: support the inline xattrs

2013-08-26 Thread Jaegeuk Kim
touch any existing files and newly created files as well. Signed-off-by: Jaegeuk Kim --- fs/f2fs/f2fs.h | 16 fs/f2fs/node.c | 7 ++ fs/f2fs/xattr.c | 249 fs/f2fs/xattr.h | 12 +-- include/linux/f2fs_fs.h

[PATCH 4/5] f2fs: add the truncate_xattr_node function

2013-08-26 Thread Jaegeuk Kim
The truncate_xattr_node function will be used by inline xattr. Signed-off-by: Jaegeuk Kim --- fs/f2fs/f2fs.h | 1 + fs/f2fs/node.c | 39 --- 2 files changed, 29 insertions(+), 11 deletions(-) diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h index 0343759

[PATCH 2/5] f2fs: reserve the xattr space dynamically

2013-08-26 Thread Jaegeuk Kim
used by inline xattrs is defined as F2FS_INLINE_XATTR_ADDRS. Current patch assigns F2FS_INLINE_XATTR_ADDRS to 0 temporarily. Signed-off-by: Jaegeuk Kim --- fs/f2fs/data.c | 5 +++-- fs/f2fs/f2fs.h | 18 -- fs/f2fs/file.c | 2 +- fs/f2fs/gc.c

[PATCH] f2fs: fix omitting to update inode page

2013-08-26 Thread Jaegeuk Kim
The f2fs_set_link updates its parent inode number, so we should sync this to the inode block. Otherwise, the data can be lost after sudden-power-off. Signed-off-by: Jaegeuk Kim --- fs/f2fs/namei.c | 1 + 1 file changed, 1 insertion(+) diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c index

Re: [PATCH] f2fs: optimize gc for better performance

2013-08-29 Thread Jaegeuk Kim
_sel_policy { > int alloc_mode; /* LFS or SSR */ > int gc_mode;/* GC_CB or GC_GREEDY */ > unsigned long *dirty_segmap;/* dirty segment bitmap */ > + int dirty_type; int max_search; /* maximum # of segments to search */ > unsigned int offset;/* last scanned bitmap offset */ > unsigned int ofs_unit; /* bitmap search unit */ > unsigned int min_cost; /* minimum cost */ -- Jaegeuk Kim Samsung -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

Re: [f2fs-dev][PATCH]f2fs: avoid congestion_wait when do_checkpoint for better performance

2013-10-06 Thread Jaegeuk Kim
per(struct super_block *sb, void > *data, int silent) > mutex_init(&sbi->gc_mutex); > mutex_init(&sbi->writepages); > mutex_init(&sbi->cp_mutex); > + init_waitqueue_head(&sbi->writeback_wqh); > for (i = 0; i < NR_GLOBAL_LOCKS; i++) > mutex_init(&sbi->fs_lock[i]); > mutex_init(&sbi->node_write); > -- Jaegeuk Kim Samsung -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

Re: [PATCH] f2fs: optimize gc for better performance

2013-09-04 Thread Jaegeuk Kim
Hi Jin, 2013-09-04 (수), 07:59 +0800, Jin Xu: > Hi Jaegeuk, > > On 03/09/2013 08:45, Jaegeuk Kim wrote: > > Hi Jin, > > > >> [...] > >>> > >>> It seems that we can obtain the performance gain just by setting the > >>> MAX_VICT

Re: [PATCH] f2fs: optimize gc for better performance

2013-09-04 Thread Jaegeuk Kim
Hi Jin, 2013-09-04 (수), 21:17 +0800, Jin Xu: > Hi Jaegeuk, > > On 04/09/2013 17:40, Jaegeuk Kim wrote: > > Hi Jin, > > > > 2013-09-04 (수), 07:59 +0800, Jin Xu: > >> Hi Jaegeuk, > >> > >> On 03/09/2013 08:45, Jaegeuk Kim wrote: > >>&g

[PATCH] f2fs: merge more bios of node block writes

2013-09-04 Thread Jaegeuk Kim
ync, sector = 500109320, size = 500K And finally, we can improve the sequential write performance, from 458.775 MB/s to 479.945 MB/s on SSD. Signed-off-by: Jaegeuk Kim --- fs/f2fs/node.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/fs/f2fs/node.c b/fs/f2fs/nod

Re: [PATCH] f2fs: optimize gc for better performance

2013-09-04 Thread Jaegeuk Kim
irty segments for SSR use most of the > time when free space is in shortage). The well-known iozone test tool > was not used for benchmarking the patch becuase it seems do not have > a test case that performs random re-write on a full disk. > > This patch is the revised version based

[GIT PULL] f2fs updates for v3.12

2013-09-05 Thread Jaegeuk Kim
nt label error f2fs: use strncasecmp() simplify the string comparison Jaegeuk Kim (21): f2fs: recover date requested by fdatasync f2fs: add proc entry to monitor current usage of segments f2fs: update file name in the inode block during f2fs_rename f2fs: fix i_name during

Re: [f2fs-dev][PATCH] f2fs: optimize fs_lock for better performance

2013-09-09 Thread Jaegeuk Kim
75c7dc3..4f27596 > > --- a/fs/f2fs/super.c > > +++ b/fs/f2fs/super.c > > @@ -657,6 +657,7 @@ static int f2fs_fill_super(struct super_block *sb, > void *data, int silent) > > mutex_init(&sbi->cp_mutex); > > for (i = 0; i < NR_GLOBAL_LOCKS; i++)

Re: [f2fs-dev] [PATCH] f2fs: optimize fs_lock for better performance

2013-09-09 Thread Jaegeuk Kim
> > > > > > > > > -- > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL > 2012, more! > Discover the easy way to master current and pr

Re: Re: [f2fs-dev] [PATCH] f2fs: optimize fs_lock for better performance

2013-09-09 Thread Jaegeuk Kim
spin_lock_init(&sbi->stat_lock); > > (END) > > > > > > > > > -- > Learn t

[PATCH] f2fs: avoid unnecessary checkpoints

2013-10-07 Thread Jaegeuk Kim
During the f2fs_put_super procedure, we don't need to conduct checkpoint all the time, since we don't need to do that if superblock is clean. Signed-off-by: Jaegeuk Kim --- fs/f2fs/super.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/f2fs/super.c b/fs/f2

[PATCH] f2fs: fix writing incorrect orphan blocks

2013-10-07 Thread Jaegeuk Kim
block according to the wrong sbi->n_orphans. To avoid this, simply we should make cover acquire_orphan_inode too with f2fs_lock_op. Signed-off-by: Jaegeuk Kim --- fs/f2fs/namei.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c inde

[PATCH] f2fs: fix to store and retrieve i_rdev correctly

2013-10-08 Thread Jaegeuk Kim
Previously f2fs stores i_rdev information into i_addr. But, if inline_xattr is set, f2fs should avoid using i_addr fields. So, this patch adds to use i_nid fields instead of i_addrs when inline_xattr is set. Signed-off-by: Jaegeuk Kim --- fs/f2fs/inode.c | 63

[PATCH] f2fs: fix the starvation problem on cp_rwsem

2013-10-09 Thread Jaegeuk Kim
didn't need to do this before neither. Signed-off-by: Jaegeuk Kim --- fs/f2fs/f2fs.h | 13 - fs/f2fs/super.c | 1 - 2 files changed, 14 deletions(-) diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h index a955a59..308967b 100644 --- a/fs/f2fs/f2fs.h +++ b/fs/f2fs/f2fs.h @@ -18,8

Re: [PATCH] f2fs: optimize gc for better performance

2013-09-02 Thread Jaegeuk Kim
TIM_SEARCH_THRESH 4096 > >> > >> struct f2fs_gc_kthread { > >>struct task_struct *f2fs_gc_task; > >> diff --git a/fs/f2fs/segment.h b/fs/f2fs/segment.h > >> index 062424a..cd33f96 100644 > >> --- a/fs/f2fs/segment.h > >> +++ b/fs/f2fs/segment.h > >> @@ -142,6 +142,7 @@ struct victim_sel_policy { > >>int alloc_mode; /* LFS or SSR */ > >>int gc_mode;/* GC_CB or GC_GREEDY */ > >>unsigned long *dirty_segmap;/* dirty segment bitmap */ > >> + int dirty_type; > > > > int max_search; /* maximum # of segments to search */ > > > >>unsigned int offset;/* last scanned bitmap offset */ > >>unsigned int ofs_unit; /* bitmap search unit */ > >>unsigned int min_cost; /* minimum cost */ > > > -- Jaegeuk Kim Samsung -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

[PATCH 2/2] f2fs: avoid an overflow during utilization calculation

2013-09-02 Thread Jaegeuk Kim
The current f2fs uses all the block counts with 32 bit numbers, which is able to cover about 15TB volume. But in calculation of utilization, f2fs multiplies the count by 100 which can induce overflow. This patch fixes this. Signed-off-by: Jaegeuk Kim --- fs/f2fs/segment.h | 2 +- 1 file

[PATCH 1/2] f2fs: trigger GC when there are prefree segments

2013-09-02 Thread Jaegeuk Kim
Previously, f2fs conducts SSR when free_sections() < overprovision_sections. But, even though there are a lot of prefree segments, it can consider SSR only. So, let's consider the number of prefree segments too for triggering SSR. Signed-off-by: Jaegeuk Kim --- fs/f2fs/segment.h | 3 ++-

Re: [RFC 1/1] f2fs: don't GC or take an fs_lock from f2fs_initxattrs()

2013-09-25 Thread Jaegeuk Kim
; > > exit: > > - mutex_unlock_op(sbi, ilock); > > kzfree(base_addr); > > return error; > > } > > + > > +int f2fs_setxattr(struct inode *inode, int name_index, const char *name, > > + const void *value, size_t valu

Re: [PATCH 16/16] f2fs: update Kconfig and Makefile

2012-10-06 Thread Jaegeuk Kim
greg k-h > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majord...@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- Jae

Re: [PATCH 10/16] f2fs: add core inode operations

2012-10-06 Thread Jaegeuk Kim
gt; + ri->i_ctime = cpu_to_le32(inode->i_ctime.tv_sec); > > + ri->i_mtime = cpu_to_le32(inode->i_mtime.tv_sec); > > + ri->i_atime = cpu_to_le32(inode->i_atime.tv_sec); > > + ri->current_depth = cpu_to_le32(F2FS_I(inode)->current_depth); > > + ri->

Re: [PATCH 13/16] f2fs: add xattr and acl functionalities

2012-10-06 Thread Jaegeuk Kim
age to majord...@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- Jaegeuk Kim Samsung -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vge

Re: [PATCH 02/16] f2fs: add on-disk layout

2012-10-06 Thread Jaegeuk Kim
t; Ok, I'll take a look at this. Thanks, > > Regards > > > > Dan > > > > Thanks > Boaz > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majord...@vger.kernel.org > More maj

Re: [PATCH 02/16] f2fs: add on-disk layout

2012-10-06 Thread Jaegeuk Kim
2012-10-05 (금), 19:46 +0200, Martin Steigerwald: > Am Freitag, 5. Oktober 2012 schrieb 김재극: > > This adds a header file describing the on-disk layout of f2fs. > > > > Signed-off-by: Changman Lee > > Signed-off-by: Chul Lee > > Signed-off-by: Jaegeuk Kim >

  1   2   3   4   5   6   7   8   9   10   >