Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752499AbdHNIsl (ORCPT ); Mon, 14 Aug 2017 04:48:41 -0400 Received: from LGEAMRELO11.lge.com ([156.147.23.51]:33967 "EHLO lgeamrelo11.lge.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752346AbdHNIsk (ORCPT ); Mon, 14 Aug 2017 04:48:40 -0400 X-Original-SENDERIP: 156.147.1.126 X-Original-MAILFROM: minchan@kernel.org X-Original-SENDERIP: 10.177.220.163 X-Original-MAILFROM: minchan@kernel.org Date: Mon, 14 Aug 2017 17:48:37 +0900 From: Minchan Kim To: Christoph Hellwig Cc: Dan Williams , Matthew Wilcox , Andrew Morton , Linux Kernel Mailing List , linux-mm , Ross Zwisler , "karam . lee" , seungho1.park@lge.com, Dave Chinner , Jan Kara , Jens Axboe , Vishal Verma , "linux-nvdimm@lists.01.org" , kernel-team Subject: Re: [PATCH v1 2/6] fs: use on-stack-bio if backing device has BDI_CAP_SYNC capability Message-ID: <20170814084837.GF26913@bbox> 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> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170811104615.GA14397@lst.de> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 718 Lines: 21 Hi Christoph, On Fri, Aug 11, 2017 at 12:46:15PM +0200, 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. Still, I don't understand how sbvec[nr_pages] with on-stack bio in do_mpage_readpage can help the performance. IIUC, do_mpage_readpage works with page-base. IOW, it passes just one page, not multiple pages so if we use on-stack bio, we just add *a page* via bio_add_page and submit the bio before the function returning. So, rather than sbvec[1], why de we need sbvec[nr_pages]? Please, let me open my eyes. :) Thanks.