On 2018/4/10 10:46, heyunlei wrote:
>
>
>> -----Original Message-----
>> From: Yuchao (T)
>> Sent: Tuesday, April 10, 2018 10:36 AM
>> To: heyunlei; [email protected]; [email protected]
>> Cc: Wangbintian; Zhangdianfang (Euler)
>> Subject: Re: [f2fs-dev][PATCH v3] f2fs: stop issue discard if something
>> wrong with f2fs
>>
>> On 2018/4/9 19:27, Yunlei He wrote:
>>> This patch stop async thread and umount process to issue discard
>>> if something wrong with f2fs, which is similar to fstrim.
>>>
>>> v1->v2: add fs error check in not only discard thread but also umount
>>> process
>>> v2->v3: remove redundant error message
>>>
>>> Signed-off-by: Yunlei He <[email protected]>
>>> ---
>>> fs/f2fs/segment.c | 3 +++
>>> 1 file changed, 3 insertions(+)
>>>
>>> diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c
>>> index 5854cc4..e31d506 100644
>>> --- a/fs/f2fs/segment.c
>>> +++ b/fs/f2fs/segment.c
>>> @@ -1202,6 +1202,9 @@ static int __issue_discard_cmd(struct f2fs_sb_info
>>> *sbi,
>>> int i, iter = 0, issued = 0;
>>> bool io_interrupted = false;
>>>
>>> + if (is_sbi_flag_set(sbi, SBI_NEED_FSCK))
>>> + return issued;
>>
>> Hmm.. except here, I mean we'd better add it into issue_discard_thread too?
>
> Async thread will also use this function to issue discard, besides, in this
> case
> __issue_discard_cmd will return zero to async thread, thread will wait max
> Interval 60s. Anything I missed?
There is still locking overhead from sb_{start,end}_intwrite, although it's
tiny,
but since there is no way to revert NEED_FSCK status, so just let discard thread
be aware of this to walk around is OK.
Thanks,
>
> Thanks.
>
>>
>> Thanks,
>>
>>> +
>>> for (i = MAX_PLIST_NUM - 1; i >= 0; i--) {
>>> if (i + 1 < dpolicy->granularity)
>>> break;
>>>
>
>
> .
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel