Messages in this thread | | | Subject | Re: [f2fs-dev] [PATCH] f2fs: fix long latency due to discard during umount | From | Chao Yu <> | Date | Tue, 24 Mar 2020 17:47:03 +0800 |
| |
On 2020/3/24 17:08, Chao Yu wrote: > On 2020/3/18 12:44, Sahitya Tummala wrote: >> F2FS already has a default timeout of 5 secs for discards that >> can be issued during umount, but it can take more than the 5 sec >> timeout if the underlying UFS device queue is already full and there >> are no more available free tags to be used. In that case, submit_bio() >> will wait for the already queued discard requests to complete to get >> a free tag, which can potentially take way more than 5 sec. >> >> Fix this by submitting the discard requests with REQ_NOWAIT >> flags during umount. This will return -EAGAIN for UFS queue/tag full >> scenario without waiting in the context of submit_bio(). The FS can >> then handle these requests by retrying again within the stipulated >> discard timeout period to avoid long latencies.
BTW, I guess later we can add nowait logic as a sub policy of discard_policy, then DPOLICY_BG would be more configurable with this nowait policy support.
Thanks,
>> >> Signed-off-by: Sahitya Tummala <stummala@codeaurora.org> > > Reviewed-by: Chao Yu <yuchao0@huawei.com> > > Thanks, > > > _______________________________________________ > Linux-f2fs-devel mailing list > Linux-f2fs-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel > . >
| |