Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753255AbdHKO1F (ORCPT ); Fri, 11 Aug 2017 10:27:05 -0400 Received: from mail-it0-f47.google.com ([209.85.214.47]:34865 "EHLO mail-it0-f47.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752892AbdHKO1D (ORCPT ); Fri, 11 Aug 2017 10:27:03 -0400 Subject: Re: [PATCH v1 2/6] fs: use on-stack-bio if backing device has BDI_CAP_SYNC capability To: Christoph Hellwig , Dan Williams Cc: Matthew Wilcox , Minchan Kim , Andrew Morton , Linux Kernel Mailing List , linux-mm , Ross Zwisler , "karam . lee" , seungho1.park@lge.com, Dave Chinner , Jan Kara , Vishal Verma , "linux-nvdimm@lists.01.org" , kernel-team References: <1502175024-28338-1-git-send-email-minchan@kernel.org> <1502175024-28338-3-git-send-email-minchan@kernel.org> <20170808124959.GB31390@bombadil.infradead.org> <20170808132904.GC31390@bombadil.infradead.org> <20170809015113.GB32338@bbox> <20170809023122.GF31390@bombadil.infradead.org> <20170809024150.GA32471@bbox> <20170810030433.GG31390@bombadil.infradead.org> <20170811104615.GA14397@lst.de> From: Jens Axboe Message-ID: <20c5b30a-b787-1f46-f997-7542a87033f8@kernel.dk> Date: Fri, 11 Aug 2017 08:26:59 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <20170811104615.GA14397@lst.de> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 919 Lines: 22 On 08/11/2017 04:46 AM, Christoph Hellwig wrote: > On Wed, Aug 09, 2017 at 08:06:24PM -0700, Dan Williams wrote: >> I like it, but do you think we should switch to sbvec[] to >> preclude pathological cases where nr_pages is large? > > Yes, please. > > Then I'd like to see that the on-stack bio even matters for > mpage_readpage / mpage_writepage. Compared to all the buffer head > overhead the bio allocation should not actually matter in practice. I'm skeptical for that path, too. I also wonder how far we could go with just doing a per-cpu bio recycling facility, to reduce the cost of having to allocate a bio. The on-stack bio parts are fine for simple use case, where simple means that the patch just special cases the allocation, and doesn't have to change much else. I had a patch for bio recycling and batched freeing a year or two ago, I'll see if I can find and resurrect it. -- Jens Axboe