From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 13 Jan 2017 11:12:11 -0800 From: Jaegeuk Kim To: Christoph Hellwig Cc: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net Subject: Re: [PATCH 5/6] f2fs: add a kernel thread to issue discard commands asynchronously Message-ID: <20170113191211.GB1301@jaegeuk.local> References: <20170112224407.54026-1-jaegeuk@kernel.org> <20170112224407.54026-5-jaegeuk@kernel.org> <20170113080159.GB31777@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170113080159.GB31777@infradead.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: On 01/13, Christoph Hellwig wrote: > On Thu, Jan 12, 2017 at 02:44:06PM -0800, Jaegeuk Kim wrote: > > This patch adds a kernel thread to issue discard commands. > > It proposes three states, D_PREP, D_SUBMIT, and D_DONE to identify current > > bio status. > > Why? Instead of creating the complexity of a thread you should look > into issuing the discard bios asynchronously, which should help to > simplify a lot of the discard logic in f2fs. Previously, I've done to issue discard bios asynchronously. But the problem that I've got is that was not enough. When testing nvme SSD with noop IO scheduler, submit_bio() was blocked at every 8 async discard bios, resulting in very slow checkpoint process which blocks most of other FS operations. Thanks,