All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chao Yu <chao2.yu@samsung.com>
To: 'He YunLei' <heyunlei@huawei.com>
Cc: jaegeuk@kernel.org, linux-f2fs-devel@lists.sourceforge.net
Subject: Re: [PATCH] f2fs: add a judgment in add_discard_addrs
Date: Wed, 09 Sep 2015 09:11:29 +0800	[thread overview]
Message-ID: <005a01d0ea9c$8fee9600$afcbc200$@samsung.com> (raw)
In-Reply-To: <55EF74FB.8050600@huawei.com>

> -----Original Message-----
> From: He YunLei [mailto:heyunlei@huawei.com]
> Sent: Wednesday, September 09, 2015 7:54 AM
> To: Chao Yu
> Cc: jaegeuk@kernel.org; linux-f2fs-devel@lists.sourceforge.net; bintian.wang@huawei.com
> Subject: Re: [f2fs-dev] [PATCH] f2fs: add a judgment in add_discard_addrs
> 
> On 2015/9/8 19:14, Chao Yu wrote:
> > Hi Yunlei,
> >
> >> -----Original Message-----
> >> From: Yunlei He [mailto:heyunlei@huawei.com]
> >> Sent: Tuesday, September 08, 2015 6:51 PM
> >> To: chao2.yu@samsung.com; jaegeuk@kernel.org; linux-f2fs-devel@lists.sourceforge.net
> >> Cc: bintian.wang@huawei.com; Yunlei He
> >> Subject: [f2fs-dev] [PATCH] f2fs: add a judgment in add_discard_addrs
> >>
> >> CP_DISCARD traverse all segments in fstrim_range to add small discards,
> >> it is better to select entry->len bigger than trim_minlen.
> >
> > If we mount with 'discard' option, f2fs will trigger real-time discard
> > when do checkpoint. If we add judgment condition here, fragmented invalid
> > blocks will not be discarded since we stop adding them in pending list
> > through __add_discard_entry.
> 
> This judgment condition is only valid for cp reason CP_DISCARD, and has no influence
> to other checkpoint. The process of fstrim adds all invalid blocks in pending list and
> deletes entries which len < trim_minlen when issue discard. Can we do the selection
> when added?

__add_discard_entry will try to merge small discards in pending list, and merged discard
may be the eligible candidate, so we'd better not skip that.

Thanks,

> 
> Thanks,
> 
> >
> > Thanks,
> >
> >>
> >> Signed-off-by: Yunlei He <heyunlei@huawei.com>
> >> ---
> >>   fs/f2fs/segment.c | 3 ++-
> >>   1 file changed, 2 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c
> >> index 78e6d06..a0dab7a 100644
> >> --- a/fs/f2fs/segment.c
> >> +++ b/fs/f2fs/segment.c
> >> @@ -599,7 +599,8 @@ static void add_discard_addrs(struct f2fs_sb_info *sbi, struct cp_control
> >> *cpc)
> >>   			break;
> >>
> >>   		end = __find_rev_next_zero_bit(dmap, max_blocks, start + 1);
> >> -		__add_discard_entry(sbi, cpc, se, start, end);
> >> +		if(force && cpc->trim_minlen >= (end - start))
> >> +			__add_discard_entry(sbi, cpc, se, start, end);
> >>   	}
> >>   }
> >>
> >> --
> >> 1.9.1
> >
> >
> >


------------------------------------------------------------------------------
Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
Get real-time metrics from all of your servers, apps and tools
in one place.
SourceForge users - Click here to start your Free Trial of Datadog now!
http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140

  reply	other threads:[~2015-09-09  1:12 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-08 10:51 [PATCH] f2fs: add a judgment in add_discard_addrs Yunlei He
2015-09-08 11:14 ` Chao Yu
2015-09-08 23:53   ` He YunLei
2015-09-09  1:11     ` Chao Yu [this message]
2015-09-09  2:32       ` He YunLei

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='005a01d0ea9c$8fee9600$afcbc200$@samsung.com' \
    --to=chao2.yu@samsung.com \
    --cc=heyunlei@huawei.com \
    --cc=jaegeuk@kernel.org \
    --cc=linux-f2fs-devel@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.