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


Groups > linux.kernel > #1515490 > unrolled thread

Re: [f2fs-dev] [PATCH 3/3 v2] f2fs: keep dirty inodes selectively for checkpoint

Started byChao Yu <chao@kernel.org>
First post2016-11-05 03:50 +0100
Last post2016-11-05 08:10 +0100
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [f2fs-dev] [PATCH 3/3 v2] f2fs: keep dirty inodes selectively for  checkpoint Chao Yu <chao@kernel.org> - 2016-11-05 03:50 +0100
    Re: [f2fs-dev] [PATCH 3/3 v2] f2fs: keep dirty inodes selectively  for checkpoint Jaegeuk Kim <jaegeuk@kernel.org> - 2016-11-05 08:10 +0100

#1515490 — Re: [f2fs-dev] [PATCH 3/3 v2] f2fs: keep dirty inodes selectively for checkpoint

FromChao Yu <chao@kernel.org>
Date2016-11-05 03:50 +0100
SubjectRe: [f2fs-dev] [PATCH 3/3 v2] f2fs: keep dirty inodes selectively for checkpoint
Message-ID<szZdn-1U0-7@gated-at.bofh.it>
On 2016/10/20 10:26, Jaegeuk Kim wrote:
> Change log from v1:
>  o avoid performance regression
> 
>>From b34a3d3c4c3fa2d6e000acc99bc5216a247bd6cb Mon Sep 17 00:00:00 2001
> From: Jaegeuk Kim <jaegeuk@kernel.org>
> Date: Fri, 14 Oct 2016 11:51:23 -0700
> Subject: [PATCH] f2fs: keep dirty inodes selectively for checkpoint
> 
> This is to avoid no free segment bug during checkpoint caused by a number of
> dirty inodes.
> 
> The case was reported by Chao like this.
> 
> 1. mount with lazytime option
> 2. fragment space
> 3. touch all files in the image
> 4. umount
> 
> In this case, we actually don't need to flush dirty inode to inode page during
> checkpoint.
> 
> Reported-by: Chao Yu <chao@kernel.org>
> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>

Good job! IMO, main job of checkpoint is to keep filesystem being consistent,
not flush dirty datas of vfs/fs as much as possible, if there are some
restrictions for the interface like fsync, syncfs, sync, the caller of
checkpoint() should do related job like marking lazytime inode I_DIRTY_SYNC or
flush last data in dirty inode into filesystem's cache, and so on. :)

BTW, can you change commit log a bit as below:

1. mount with lazytime option
2. fill 4k file until disk is full
3. sync filesystem
4. read all files in the image
5. umount

Reviewed-by: Chao Yu <yuchao0@huawei.com>

Thanks,

[toc] | [next] | [standalone]


#1515510 — Re: [f2fs-dev] [PATCH 3/3 v2] f2fs: keep dirty inodes selectively for checkpoint

FromJaegeuk Kim <jaegeuk@kernel.org>
Date2016-11-05 08:10 +0100
SubjectRe: [f2fs-dev] [PATCH 3/3 v2] f2fs: keep dirty inodes selectively for checkpoint
Message-ID<sA3gZ-4Pq-5@gated-at.bofh.it>
In reply to#1515490
On Sat, Nov 05, 2016 at 10:44:07AM +0800, Chao Yu wrote:
> On 2016/10/20 10:26, Jaegeuk Kim wrote:
> > Change log from v1:
> >  o avoid performance regression
> > 
> >>From b34a3d3c4c3fa2d6e000acc99bc5216a247bd6cb Mon Sep 17 00:00:00 2001
> > From: Jaegeuk Kim <jaegeuk@kernel.org>
> > Date: Fri, 14 Oct 2016 11:51:23 -0700
> > Subject: [PATCH] f2fs: keep dirty inodes selectively for checkpoint
> > 
> > This is to avoid no free segment bug during checkpoint caused by a number of
> > dirty inodes.
> > 
> > The case was reported by Chao like this.
> > 
> > 1. mount with lazytime option
> > 2. fragment space
> > 3. touch all files in the image
> > 4. umount
> > 
> > In this case, we actually don't need to flush dirty inode to inode page during
> > checkpoint.
> > 
> > Reported-by: Chao Yu <chao@kernel.org>
> > Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
> 
> Good job! IMO, main job of checkpoint is to keep filesystem being consistent,
> not flush dirty datas of vfs/fs as much as possible, if there are some
> restrictions for the interface like fsync, syncfs, sync, the caller of
> checkpoint() should do related job like marking lazytime inode I_DIRTY_SYNC or
> flush last data in dirty inode into filesystem's cache, and so on. :)
> 
> BTW, can you change commit log a bit as below:

Okay, not a big deal.

> 
> 1. mount with lazytime option
> 2. fill 4k file until disk is full
> 3. sync filesystem
> 4. read all files in the image
> 5. umount
> 
> Reviewed-by: Chao Yu <yuchao0@huawei.com>
> 
> Thanks,

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web