From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755641AbcKBOh6 (ORCPT ); Wed, 2 Nov 2016 10:37:58 -0400 Received: from bombadil.infradead.org ([198.137.202.9]:60875 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753376AbcKBOh4 (ORCPT ); Wed, 2 Nov 2016 10:37:56 -0400 Date: Wed, 2 Nov 2016 07:37:49 -0700 From: Christoph Hellwig To: "Kirill A. Shutemov" Cc: Jan Kara , "Kirill A. Shutemov" , "Theodore Ts'o" , Andreas Dilger , Jan Kara , Andrew Morton , Alexander Viro , Hugh Dickins , Andrea Arcangeli , Dave Hansen , Vlastimil Babka , Matthew Wilcox , Ross Zwisler , linux-ext4@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-block@vger.kernel.org Subject: Re: [PATCHv3 15/41] filemap: handle huge pages in do_generic_file_read() Message-ID: <20161102143749.GB4790@infradead.org> References: <20160915115523.29737-1-kirill.shutemov@linux.intel.com> <20160915115523.29737-16-kirill.shutemov@linux.intel.com> <20161013093313.GB26241@quack2.suse.cz> <20161031181035.GA7007@node.shutemov.name> <20161101163940.GA5459@quack2.suse.cz> <20161102083204.GB13949@node.shutemov.name> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20161102083204.GB13949@node.shutemov.name> User-Agent: Mutt/1.6.1 (2016-04-27) X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Nov 02, 2016 at 11:32:04AM +0300, Kirill A. Shutemov wrote: > Yes, buffer_head list doesn't scale. That's the main reason (along with 4) > why syscall-based IO sucks. We spend a lot of time looking for desired > block. > > We need to switch to some other data structure for storing buffer_heads. > Is there a reason why we have list there in first place? > Why not just array? > > I will look into it, but this sounds like a separate infrastructure change > project. We're working on it with the iomap code. And yes, it's really something that needs to be done before we can consider the THP patches. Same for the biovec thing were we really need the > PAGE_SIZE bio_vecs first.