2012/10/22, Dave Chinner :
> On Fri, Oct 19, 2012 at 04:51:05PM +0900, Namjae Jeon wrote:
>> Hi Dave.
>>
>> Test Procedure:
>>
>> 1) Local USB disk WRITE speed on NFS server is ~25 MB/s
>>
>> 2) Run WRITE test(create 1 GB file) on NFS Client with de
From: Namjae Jeon
Implement preallocation via the fallocate syscall on VFAT partitions.
Change Log:
v5: change to avoid compilation warning:
fs/fat/inode.c: In function 'fat_zero_falloc_area':
>> fs/fat/inode.c:169:11: warning: comparison of distinct pointer
types lacks a
From: Namjae Jeon
The code conditions put inside the function is_multimedia_file are
reverse to the name i.e, we need to negate the return to actually
check if the file is a multimedia file. So, change the code and usage
path to align both the name and comparision conditions.
Signed-off-by
From: Namjae Jeon
Adding REQ_META for all the metadata requests can help in improving the
FS performance, if the underlying device supports TAGGING.
So, when considering the submit_bio path for all the f2fs requests. We can
add REQ_META for all the META requests.
As a precursor to this change we
From: Namjae Jeon
Add tracepoints in f2fs filesystem for tracing the filesystem
operations for information/debugging purpose if needed. All the
tracepoints are clubbed with respect to functionalities.
Change Log:
v4: Modified the tracepoints as per the review comments of
Jaegeuk Kim. Following
From: Namjae Jeon
Add tracepoints in f2fs for tracing the syncing
operations like filesystem sync, file sync enter/exit.
It will helf to trace the code under debugging scenarios.
Also add tracepoints for tracing the various inode operations
like building inode, eviction of inode, link/unlike of
From: Namjae Jeon
add tracepoints for tracing the truncate operations
like truncate node/data blocks, f2fs_truncate etc.
Tracepoints are added at entry and exit of operation
to trace the success & failure of operation.
Signed-off-by: Namjae Jeon
Signed-off-by: Pankaj Kumar
Acked-by: St
From: Namjae Jeon
Add tracepoints for page i/o operations and block allocation
tracing during page read operation.
Signed-off-by: Namjae Jeon
Signed-off-by: Pankaj Kumar
Acked-by: Steven Rostedt
---
fs/f2fs/data.c | 16 +--
include/trace/events/f2fs.h | 63
From: Namjae Jeon
Add tracepoints for tracing the garbage collector
threads in f2fs with status of collection & type.
Signed-off-by: Namjae Jeon
Signed-off-by: Pankaj Kumar
Acked-by: Steven Rostedt
---
fs/f2fs/gc.c|2 ++
include/trace/events/f2fs.h |
From: Namjae Jeon
Add tracepoints to debug the block allocation & fallocate.
Signed-off-by: Namjae Jeon
Signed-off-by: Pankaj Kumar
Acked-by: Steven Rostedt
---
fs/f2fs/data.c |1 +
fs/f2fs/file.c |6 -
include/trace/events/f2fs.h |
From: Namjae Jeon
Add tracepoints to debug checkpoint request.
Signed-off-by: Namjae Jeon
Signed-off-by: Pankaj Kumar
Acked-by: Steven Rostedt
---
fs/f2fs/checkpoint.c|4
include/trace/events/f2fs.h | 22 ++
2 files changed, 26 insertions(+)
diff
From: Namjae Jeon
Add tracepoints to debug the various page write operation
like data pages, meta pages.
Signed-off-by: Namjae Jeon
Signed-off-by: Pankaj Kumar
Acked-by: Steven Rostedt
---
fs/f2fs/checkpoint.c|2 +
fs/f2fs/data.c |2 +
fs/f2fs/segment.c
From: Namjae Jeon
linux-v3.8-rc1 and later support for plug for blkdev_issue_discard with
commit 0cfbcafcae8b7364b5fa96c2b26ccde7a3a296a9
(block: add plug for blkdev_issue_discard )
For example,
1) DISCARD rq-1 with size size 4GB
2) DISCARD rq-2 with size size 1GB
If these 2 discard requests
From: Namjae Jeon
https://lkml.org/lkml/2013/4/1/292
As per above discussion, it has been oberved that few drivers are
setting q->limits.max_discard_sectors to more than (UINT_MAX >> 9)
If multiple discard requests get merged, merged discard request's
size exceeds 4GB, there
From: Namjae Jeon
https://lkml.org/lkml/2013/4/1/292
As per above discussion, there is possibility that request's __data_len
field may overflow when max_discard_sectors greater than UINT_MAX >> 9
If multiple discard requests get merged, merged discard request's
size excee
From: Namjae Jeon
It is better to use blk_queue_max_discard_sectors helper
function to set max_discard_sectors as it checks
max_discard_sectors upper limit UINT_MAX >> 9
similar issue was reported for mmc in below link
https://lkml.org/lkml/2013/4/1/292
If multiple discard requests get
From: Namjae Jeon
It is better to use blk_queue_max_discard_sectors helper
function to set max_discard_sectors as it checks
max_discard_sectors upper limit UINT_MAX >> 9
similar issue was reported for mmc in below link
https://lkml.org/lkml/2013/4/1/292
If multiple discard requests get
From: Namjae Jeon
It is better to use blk_queue_max_discard_sectors helper
function to set max_discard_sectors as it checks
max_discard_sectors upper limit UINT_MAX >> 9
similar issue was reported for mmc in below link
https://lkml.org/lkml/2013/4/1/292
If multiple discard requests get
From: Namjae Jeon
It is better to use blk_queue_max_discard_sectors helper
function to set max_discard_sectors as it checks
max_discard_sectors upper limit UINT_MAX >> 9
similar issue was reported for mmc in below link
https://lkml.org/lkml/2013/4/1/292
If multiple discard requests get
From: Namjae Jeon
It is better to use blk_queue_max_discard_sectors helper
function to set max_discard_sectors as it checks
max_discard_sectors upper limit UINT_MAX >> 9
similar issue was reported for mmc in below link
https://lkml.org/lkml/2013/4/1/292
If multiple discard requests get
From: Namjae Jeon
It is better to use blk_queue_max_discard_sectors helper
function to set max_discard_sectors as it checks
max_discard_sectors upper limit UINT_MAX >> 9
similar issue was reported for mmc in below link
https://lkml.org/lkml/2013/4/1/292
If multiple discard requests get
From: Namjae Jeon
It is better to use blk_queue_max_discard_sectors helper
function to set max_discard_sectors as it checks
max_discard_sectors upper limit UINT_MAX >> 9
similar issue was reported for mmc in below link
https://lkml.org/lkml/2013/4/1/292
If multiple discard requests get
2013/4/21 James Bottomley :
> On Sat, 2013-04-20 at 01:40 +0900, Namjae Jeon wrote:
>> From: Namjae Jeon
>>
>> linux-v3.8-rc1 and later support for plug for blkdev_issue_discard with
>> commit 0cfbcafcae8b7364b5fa96c2b26ccde7a3a296a9
>> (block: add plug for
2013/4/22, Jaegeuk Kim :
> 2013-04-20 (토), 01:27 +0900, Namjae Jeon:
>> From: Namjae Jeon
>>
>> Adding REQ_META for all the metadata requests can help in improving the
>> FS performance, if the underlying device supports TAGGING.
>> So, when considering the
2013/4/19, Neil Armstrong :
> Since eMMC 4.3 a special boot mode operation was introduced to retrieve
> data from the eMMC device with a very simple procedure. Since the Linux
> kernel exports these device boot partitions, it may be useful to select
> the boot partition from the user space.
>
> The
2013/4/23, Kent Overstreet :
> On Sat, Apr 20, 2013 at 01:40:02AM +0900, Namjae Jeon wrote:
>> From: Namjae Jeon
>>
>> linux-v3.8-rc1 and later support for plug for blkdev_issue_discard with
>> commit 0cfbcafcae8b7364b5fa96c2b26ccde7a3a296a9
>> (block:
2013/4/23, Andrew Morton :
> On Thu, 18 Apr 2013 22:54:15 +0900 Namjae Jeon
> wrote:
>
>> Change Log:
>> v5: change to avoid compilation warning:
>> fs/fat/inode.c: In function 'fat_zero_falloc_area':
>> >> fs/fat/inode.c:169:11: warning: com
From: Namjae Jeon
linux-v3.8-rc1 and later support for plug for blkdev_issue_discard with
commit 0cfbcafcae8b7364b5fa96c2b26ccde7a3a296a9
(block: add plug for blkdev_issue_discard )
For example,
1) DISCARD rq-1 with size size 4GB
2) DISCARD rq-2 with size size 1GB
If these 2 discard requests
2013/6/11, Namjae Jeon :
> 2013/6/11, Changman Lee :
>> On 화, 2013-06-11 at 07:57 +0900, Namjae Jeon wrote:
>>> 2013/6/10, Changman Lee :
>>> > Hello, Namjae
>>> Hi. Changman.
>>> >
>>> > If using ACL, whenever i_mode is changed we sho
From: Namjae Jeon
Optimise the while loop condition
Since this condition will always be true and while loop will
be terminated by the following condition in code:
if (segno >= TOTAL_SEGS(sbi))
break;
Hence we can replace the while loop condition with while(1)
instead of always checking
From: Namjae Jeon
Add the f2fs_remount function call which will be used
during the filesystem remounting. This function
will help us to change the mount options specific to
f2fs.
Also modify the f2fs background_gc mount option, which
will allow the user to dynamically trun on/off the
garbage
Hi. Huajun.
I agree jaegeuk's opinion.
Additionally, It is better that you describe the effect in change-log
when this feature is added to f2fs.
e.g.
1. how much space is saved when storing kernel-tree(small files) ?
2. small files creation performance test.
3. file look-up performance
2013/6/4 Gu Zheng :
> On 06/01/2013 03:20 PM, Namjae Jeon wrote:
>
>> From: Namjae Jeon
>>
>> Add the f2fs_remount function call which will be used
>> during the filesystem remounting. This function
>> will help us to change the mount options specific to
[snip]
>>
>>>
+
+ /**
+ * We stop the GC thread if FS is mounted as RO
+ * or if background_gc = 0 is passed in mount
+ * option. Also sync the filesystem.
+ */
+ if ((*flags & MS_RDONLY) || !test_opt(sbi, BG_GC)) {
>>>
>>>
>>> Another
Hi, OGAWA.
We checked several cases with respect to your questions. But we cannot
find any issue.
Also, We compare the results with Ext4. It is same.
>cluster size == 512b
>1) create new file
>2) fallocate 100MB
>3) write(2) data for each 512b
>With this, write_begin() will be called for each 51
2013/6/19, OGAWA Hirofumi :
> Namjae Jeon writes:
>
>>>If above is correct, right implement to change get_block().
>> Now when we try to write in the fallocated region ( with keep size) in
>> the fat_write_begin when it is called first time it checks that the
>>
From: Namjae Jeon
Add the f2fs_remount function call which will be used
during the filesystem remounting. This function
will help us to change the mount options specific to
f2fs.
Also modify the f2fs background_gc mount option, which
will allow the user to dynamically trun on/off the
garbage
From: Namjae Jeon
Fix the function get_victim_by_default, where it checks
for the condition that p.min_segno != NULL_SEGNO as
shown:
if (p.min_segno != NULL_SEGNO)
goto got_it;
and if above condition is true then
got_it:
if (p.min_segno != NULL_SEGNO) {
So this condition
mutex_lock_op(sbi))
Thanks.
>
>>
>> >
>> >
>> > Subject: [PATCH v2] f2fs: reorganize the f2fs_setattr(), f2fs_set_acl,
>> > f2fs_setxattr()
>> > From: Namjae Jeo
From: Namjae Jeon
This patch series introduces 2 new ioctls for ext4.
Truncate_block_range ioctl truncates blocks from source file.
Transfer_block_range ioctl transfers data blocks from source file
and append them at the end of destination file.
Ioctl1: EXT4_IOC_TRUNCATE_BLOCK_RANGE
From: Namjae Jeon
The EXT4_IOC_TRUNCATE_BLOCK_RANGE removes the data blocks lying
between [start, "start + length") and updates the logical block numbers
of data blocks starting from "start + length" block to last block of file.
This will maintain contiguous nature of logical
From: Namjae Jeon
This patch series introduces 2 new ioctls for ext4.
Truncate_block_range ioctl truncates blocks from source file.
Transfer_block_range ioctl transfers data blocks from source file
and append them at the end of destination file.
Ioctl1: EXT4_IOC_TRUNCATE_BLOCK_RANGE
From: Namjae Jeon
This patch makes mext_next_extent non static and moves the
defination of get_ext_path to ext4_extents.h as these 2
functions are used by EXT4_IOC_TRANSFER_BLOCK_RANGE introduced
in next patch.
Signed-off-by: Namjae Jeon
Signed-off-by: Ashish Sangwan
---
fs/ext4/ext4.h
From: Namjae Jeon
The EXT4_IOC_TRANSFER_BLOCK_RANGE ioctl transfers the data blocks lying
between [start, "start + length") form source file and append them
to destination file (represented by dest_fd).
This operation leaves a hole in the source file from where data blocks
are trans
Hi.
I attached testcases for these ioctls.
Thanks.
2013/6/23 Namjae Jeon :
> From: Namjae Jeon
>
> This patch series introduces 2 new ioctls for ext4.
>
> Truncate_block_range ioctl truncates blocks from source file.
> Transfer_block_range ioctl transfers data blocks from
2013/6/24, Andreas Dilger :
> On 2013-06-23, at 0:07, Namjae Jeon wrote:
>
>> From: Namjae Jeon
>>
>> This patch series introduces 2 new ioctls for ext4.
>>
>> Truncate_block_range ioctl truncates blocks from source file.
>
Hi. Andreas.
> How is this dif
2013/6/23, Dmitry Monakhov :
> On Sun, 23 Jun 2013 15:07:36 +0900, Namjae Jeon
> wrote:
>> From: Namjae Jeon
Hi Dmitry.
> What is the difference between this ioctl and generic punch_hole?
It is different. Dave chinner already answered it.
>>
--
To unsubscribe from thi
2013/6/24, Andreas Dilger :
> On 2013-06-23, at 0:07, Namjae Jeon wrote:
>
>> From: Namjae Jeon
>> The EXT4_IOC_TRUNCATE_BLOCK_RANGE removes the data blocks lying
>> between [start, "start + length") and updates the logical block numbers
>> of data blocks
2013/6/24, Christoph Hellwig :
> On Mon, Jun 24, 2013 at 12:44:59PM +1000, Dave Chinner wrote:
>> various DVR companies shipping equivalent ioctl-based functionality
>> for XFS filesystems to both insert and remove chunks in video
>> streams, but I've never been able to find the code for it anywher
2013/6/25, Jaegeuk Kim :
> Hi Namjae,
>
> Sorry for the late reply.
>
> 2013-05-29 (수), 09:01 +0900, Namjae Jeon:
>> >> I have thought more after getting your reply.
>> >> f2fs_cleaner(a tentative name) is that provide the following several
>> &g
2013/6/7, Jaegeuk Kim :
> Change log from v1:
> o fix a bug
>
> From 901aea226653e26aa3556edd88ca1e48fa89eb5f Mon Sep 17 00:00:00 2001
> From: Jaegeuk Kim
> Date: Mon, 3 Jun 2013 19:46:19 +0900
> Subject: [PATCH 2/2] f2fs: support xattr security labels
> Cc: linux-fsde...@vger.kernel.org, linux-k
From: Namjae Jeon
In f2fs_ioctl() function, it is using generic flags.
Since F2FS specific flags are defined. So lets use
those flags.
Signed-off-by: Namjae Jeon
Signed-off-by: Pankaj Kumar
---
fs/f2fs/file.c |4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/f2fs
From: Namjae Jeon
The function truncate_data_blocks_range() decrements the valid
block count of inode via dec_valid_block_count(). Since this
function updates the i_blocks field of inode, we can update this
field once we have calculated total the number of blocks
to be freed.
Therefore we can
From: Namjae Jeon
Fix the function get_victim_by_default, where it checks
for the condition that p.min_segno != NULL_SEGNO as
shown:
if (p.min_segno != NULL_SEGNO)
goto got_it;
and if above condition is true then
got_it:
if (p.min_segno != NULL_SEGNO) {
So this condition
From: Namjae Jeon
Remove the redundant code from this function and make it aligned with
usages of latest generic vfs layer function e.g using the setattr_copy()
instead of using the f2fs specific function.
Also correct the condition for updating the size of file via
truncate_setsize().
Signed
inode->i_mode = fi->i_acl_mode;
> + if (err || is_inode_flag_set(fi, FI_ACL_MODE))
> clear_inode_flag(fi, FI_ACL_MODE);
> - }
> }
>
> Thanks.
>
>
> On 토, 2013-06-08 at 21:25 +0900, Namjae Jeon wrote:
>> From: Namjae Jeo
2013/6/11, Changman Lee :
> On 화, 2013-06-11 at 07:57 +0900, Namjae Jeon wrote:
>> 2013/6/10, Changman Lee :
>> > Hello, Namjae
>> Hi. Changman.
>> >
>> > If using ACL, whenever i_mode is changed we should update acl_mode
>> > which
>> >
2013/6/27, Jaegeuk Kim :
> Hi,
>
> 2013-06-26 (수), 14:10 +0900, Namjae Jeon:
>> 2013/6/25, Jaegeuk Kim :
>> >> > - any priority scheme for cleaning?
>> >> Could you plz tell me a little more detail ?
>> >
>> > I meant, as well
2013/3/25, Jaegeuk Kim :
> We should handle errors during the recovery flow correctly.
> For example, if we get -ENOMEM, we should report a mount failure instead of
> conducting the remained mount procedure.
>
> Signed-off-by: Jaegeuk Kim
> ---
> fs/f2fs/f2fs.h | 2 +-
> fs/f2fs/recovery.c |
2013/3/25, Jaegeuk Kim :
> 2013-03-25 (월), 15:30 +0900, Namjae Jeon:
>> 2013/3/25, Jaegeuk Kim :
>> > We should handle errors during the recovery flow correctly.
>> > For example, if we get -ENOMEM, we should report a mount failure instead
>> > of
>>
2013/3/25, Jaegeuk Kim :
> This patch removes data_version check flow during the fsync call.
> The original purpose for the use of data_version was to avoid writng inode
> pages redundantly by the fsync calls repeatedly.
Hi Jaegeuk.
> However, when user can modify file meta and then call fsync, we
entry
> miss.
> In order to avoid this, we don't need to drop the nat cache entry at this
> moment.
>
> Signed-off-by: Jaegeuk Kim
Looks good to me.
Reviewed-by: Namjae Jeon
Thanks~
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body
From: Namjae Jeon
Add sysfs entries to control the timing parameters for
f2fs gc thread.
Various Sysfs options introduced are:
gc_min_sleep_time: Min Sleep time for GC in ms
gc_max_sleep_time: Max Sleep time for GC in ms
gc_no_gc_sleep_time: Default Sleep time for GC in ms
Signed-off-by
From: Namjae Jeon
Add sysfs entries namely gc_long_idle and gc_short_idle to control the
gc policy. Where long idle corresponds to selecting a cost benefit approach,
while short idle corresponds to selecting a greedy approach to garbage
collection. The selection is mutually exclusive one
From: Namjae Jeon
New fallocate flag FALLOC_FL_COLLAPSE_RANGE implementation for XFS.
Signed-off-by: Namjae Jeon
Signed-off-by: Ashish Sangwan
---
fs/xfs/xfs_bmap.c | 92 +
fs/xfs/xfs_bmap.h |3 ++
fs/xfs/xfs_file.c | 26
From: Namjae Jeon
This patch series is in response of the following post:
http://lwn.net/Articles/556136/
"ext4: introduce two new ioctls"
Dave chinner suggested that truncate_block_range (which was one of the ioctls
name)
should be an fallocate operation and not any fs specific io
From: Namjae Jeon
Fallocate now supports new FALLOC_FL_COLLAPSE_RANGE flag.
The semantics of this flag are following:
1) It collapses the range lying between offset and length by removing any data
blocks which are present in this range and than updates all the logical
offsets of extents
From: Namjae Jeon
New fallocate flag FALLOC_FL_COLLAPSE_RANGE implementation for Ext4
Signed-off-by: Namjae Jeon
Signed-off-by: Ashish Sangwan
---
fs/ext4/ext4.h |3 +
fs/ext4/extents.c | 255 ++-
fs/ext4/move_extent.c
2013/8/1, Dave Chinner :
> On Wed, Jul 31, 2013 at 11:42:00PM +0900, Namjae Jeon wrote:
>> From: Namjae Jeon
>>
>> Fallocate now supports new FALLOC_FL_COLLAPSE_RANGE flag.
>> The semantics of this flag are following:
>> 1) It collapses the range lying between
2013/8/1, Dave Chinner :
> On Wed, Jul 31, 2013 at 11:42:14PM +0900, Namjae Jeon wrote:
>> From: Namjae Jeon
>>
>> New fallocate flag FALLOC_FL_COLLAPSE_RANGE implementation for XFS.
>
Hi Dave.
> A good start, but there's lots of work needed to make this safe for
2013/8/1, Ben Myers :
> Hey Namjae,
>
> On Wed, Jul 31, 2013 at 11:42:14PM +0900, Namjae Jeon wrote:
>> From: Namjae Jeon
>>
>> New fallocate flag FALLOC_FL_COLLAPSE_RANGE implementation for XFS.
>>
>> Signed-off-by: Namjae Jeon
>> Signed-off-by:
2013/8/1, Dave Chinner :
> On Wed, Jul 31, 2013 at 11:42:26PM +0900, Namjae Jeon wrote:
>> From: Namjae Jeon
>>
>> New fallocate flag FALLOC_FL_COLLAPSE_RANGE implementation for Ext4
> .
>> +
>> +punch_start = offset >> EXT4_BLOCK_SIZE_BI
>>
>> diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
>> index 78777cd..63813be 100644
>> --- a/fs/f2fs/f2fs.h
>> +++ b/fs/f2fs/f2fs.h
>> @@ -430,6 +430,10 @@ struct f2fs_sb_info {
>> #endif
>> unsigned int last_victim[2];/* last victim segment # */
>> spinlock_t stat_lock;
2013/8/1, Gu Zheng :
> Hi Jeon,
>
> On 07/31/2013 10:33 PM, Namjae Jeon wrote:
>
>> From: Namjae Jeon
>>
>> Add sysfs entries namely gc_long_idle and gc_short_idle to control the
>> gc policy. Where long idle corresponds to selecting a cost benefit
>> ap
>
>> >> + if (cur) {
>> >> + if (!error)
>> >> + cur->bc_private.b.allocated = 0;
>> >
>> > Um, why?
>> Okay, will remove.
>
> I'm asking you to explain why you put it there. Don't remove code
> that might be necessary just because a hard question was asked
We copied thi
From: Namjae Jeon
Add sysfs entries to control the timing parameters for
f2fs gc thread.
Various Sysfs options introduced are:
gc_min_sleep_time: Min Sleep time for GC in ms
gc_max_sleep_time: Max Sleep time for GC in ms
gc_no_gc_sleep_time: Default Sleep time for GC in ms
Cc: Gu Zheng
Signed
From: Namjae Jeon
This code is being used for nobh_write_end() function.
But since now f2fs_write_end function is added so
there is no need for this code.
Signed-off-by: Namjae Jeon
Signed-off-by: Pankaj Kumar
---
fs/f2fs/data.c |3 ---
1 file changed, 3 deletions(-)
diff --git a/fs
From: Namjae Jeon
Add sysfs entry gc_idle to control the gc policy. Where
gc_idle = 1 corresponds to selecting a cost benefit approach,
while gc_idle = 2 corresponds to selecting a greedy approach
to garbage collection. The selection is mutually exclusive one
approach will work at any point. If
rolling the gc_thread)
>
> Signed-off-by: Wei Yongjun
Acked-by: Namjae Jeon
--
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/
Agree. Sorry to bother.
>
> If you agree to them, I'll merge the final patch into the tree.
> Thanks,
Thank you! :)
>
> 2013-08-04 (일), 23:09 +0900, Namjae Jeon:
>> From: Namjae Jeon
>>
>> Add sysfs entries to control the timing parameters for
>> f2fs g
; struct kobject s_kobj;
>
> The failure was caused by missing the kobject header file in dir.c.
> So, this patch move the header file to the right location, f2fs.h.
>
> CC: Namjae Jeon
> Signed-off-by: Jaegeuk Kim
Oops.. Looks good :)
Thanks Jaegeuk!
> ---
--
To unsubscrib
From: Namjae Jeon
Instead of checking for victim_segmap(FG_GC) OR
(gc_type == BG_GC) && victim_segmap(BG_GC);
to continue for the victim selection. The 2 conditions
can simply be merged and decision can directly be made using 'gc_type'.
Signed-off-by: Namjae Jeon
Signed-off
From: Namjae Jeon
Optimize and change return path in lookup_free_nid_list
Signed-off-by: Namjae Jeon
Signed-off-by: Amit Sahrawat
---
fs/f2fs/node.c |7 +++
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index e275218..e24f747 100644
From: Namjae Jeon
Actual dirty of pages will occur in f2fs_delete_entry so move the
f2fs_balance_fs just before deletion.
Signed-off-by: Namjae Jeon
Signed-off-by: Amit Sahrawat
---
fs/f2fs/namei.c |4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/f2fs/namei.c b
From: Namjae Jeon
Since, maximum filename length supported in linux is 255 characters.
So, there is no need to reserve space for 256 characters in f2fs inode.
This aligns the filename length to NFS requests also which also
has a default limit of '255'.
Signed-off-by: Namjae Jeon
Sig
From: Namjae Jeon
In all the breaking conditions in get_node_path, 'n' is used to
track index in offset[] array, but while breaking out also, in all
paths n++ is done.
So, remove the ++ from breaking paths. Also, avoid
reset of 'level=0' in first case.
Signed-off-by: Namjae
From: Namjae Jeon
This patch set eliminates the client side ESTALE errors when a FAT partition
exported over NFS has it's dentries evicted from the cache. The idea is to
find the on-disk location_'i_pos' of the dirent of the inode that has been
evicted and use it to rebuild the
From: Namjae Jeon
Provide two possible values 'stale_rw' and 'nostale_ro' for
the -o nfs mount option.The first one allows all file operations but
does not reduce ESTALE errors on memory constrained systems. The second
one eliminates ESTALE errors but mounts the filesyst
From: Namjae Jeon
Move fat_i_pos_read to fat.h so that it can be called from nfs.c in the
subsequent patches to encode the file handle.
Signed-off-by: Namjae Jeon
Signed-off-by: Ravishankar N
Signed-off-by: Amit Sahrawat
---
fs/fat/fat.h | 14 ++
fs/fat/inode.c | 14
From: Namjae Jeon
Introduce helper function to get the block number and offset for a given
i_pos value. Use it in __fat_write_inode() now and later on in nfs.c
Signed-off-by: Namjae Jeon
Signed-off-by: Ravishankar N
Signed-off-by: Amit Sahrawat
---
fs/fat/fat.h |7 +++
fs/fat
From: Namjae Jeon
Define two nfs export_operation structures,one for 'stale_rw' mounts and
the other for 'nostale_ro'. The latter uses i_pos as a basis for encoding
and decoding file handles.
Also, assign i_pos to kstat->ino. The logic for rebuilding the inode is
added in
From: Namjae Jeon
If the cache lookups fail,use the i_pos value to find the
directory entry of the inode and rebuild the inode.Since this
involves accessing the FAT media, do this only if the nostale_ro nfs
mount option is specified.
Signed-off-by: Namjae Jeon
Signed-off-by: Ravishankar N
From: Namjae Jeon
This patch enables rebuilding of directory inodes which are not present
in the cache.This is done by traversing the disk clusters to find the
directory entry of the parent directory and using its i_pos to build the
inode.
The traversal is done by fat_scan_logstart() which is
From: Namjae Jeon
Add descriptions about 'stale_rw' and 'nostale_ro' nfs options in
filesystem/vfat.txt
Signed-off-by: Namjae Jeon
Signed-off-by: Ravishankar N
Signed-off-by: Amit Sahrawat
---
Documentation/filesystems/vfat.txt | 26 +-
2013/3/3, Jaegeuk Kim :
> 2013-03-02 (토), 12:41 +0900, Namjae Jeon:
>> From: Namjae Jeon
>>
>> Actual dirty of pages will occur in f2fs_delete_entry so move the
>> f2fs_balance_fs just before deletion.
>>
>> Signed-off-by: Namjae Jeon
>> Signed-off-
ux-fsde...@vger.kernel.org, linux-kernel@vger.kernel.org,
> linux-f2fs-de...@lists.sourceforge.net
>
> The maximum filename length supported in linux is 255 characters.
> So let's follow that.
>
> Signed-off-by: Namjae Jeon
> Signed-off-by: Amit Sahrawat
> Signed-off-by
2013/3/2, OGAWA Hirofumi :
> Namjae Jeon writes:
>
>> From: Namjae Jeon
>>
>> This patch set eliminates the client side ESTALE errors when a FAT
>> partition
>> exported over NFS has it's dentries evicted from the cache. The idea is
>> to
>> f
2013/5/13, Artem Bityutskiy :
> On Sat, 2013-04-13 at 22:38 +0900, Namjae Jeon wrote:
>> From: Namjae Jeon
>>
>> It is better to use blk_queue_max_discard_sectors helper
>> function to set max_discard_sectors as it checks
>> max_discard_sectors upper limit UINT
o;
>
Hi. Jaegeuk.
I have a minor comment.
> + if (!inc_valid_node_count(sbi, NULL, 1))
> + WARN_ON(1);
How about change WARN_ON(!inc_valid_node_count(sbi, NULL, 1)); ?
Reviewed-by: Namjae Jeon
Thanks.
> set_node_addr(sbi, &new_ni, NEW_ADDR);
> in
2013/5/15, Jaegeuk Kim :
> In get_lock_data_page, if there is a data race between get_dnode_of_data
> for
> node and grab_cache_page for data, f2fs is able to face with the following
> BUG_ON(dn.data_blkaddr == NEW_ADDR).
>
> kernel BUG at /home/zeus/f2fs_test/src/fs/f2fs/data.c:251!
> [] get_lock
301 - 400 of 972 matches
Mail list logo