From: He YunLei <heyunlei@huawei.com>
To: Chao Yu <chao2.yu@samsung.com>
Cc: jaegeuk@kernel.org, linux-f2fs-devel@lists.sourceforge.net
Subject: Re: [PATCH] f2fs: add a judgment in add_discard_addrs
Date: Wed, 9 Sep 2015 10:32:32 +0800 [thread overview]
Message-ID: <55EF9A40.3080902@huawei.com> (raw)
In-Reply-To: <005a01d0ea9c$8fee9600$afcbc200$@samsung.com>
On 2015/9/9 9:11, Chao Yu wrote:
>> -----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.
>
Yeah, I got it. But I think the probability of merge will not be too high.
Thanks,
> 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
prev parent reply other threads:[~2015-09-09 2:32 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
2015-09-09 2:32 ` He YunLei [this message]
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=55EF9A40.3080902@huawei.com \
--to=heyunlei@huawei.com \
--cc=chao2.yu@samsung.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).