From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Hellwig Subject: Re: [PATCH, RFC] map multiple blocks at a time in mpage_readpage(s) Date: Wed, 5 Oct 2005 09:10:37 +0200 Message-ID: <20051005071037.GA27081@lst.de> References: <20051004194246.GA18432@lst.de> <17219.27904.659471.559297@gargle.gargle.HOWL> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-fsdevel@vger.kernel.org Return-path: Received: from verein.lst.de ([213.95.11.210]:62638 "EHLO mail.lst.de") by vger.kernel.org with ESMTP id S932557AbVJEHKo (ORCPT ); Wed, 5 Oct 2005 03:10:44 -0400 To: Nikita Danilov Content-Disposition: inline In-Reply-To: <17219.27904.659471.559297@gargle.gargle.HOWL> Sender: linux-fsdevel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Wed, Oct 05, 2005 at 10:04:48AM +0400, Nikita Danilov wrote: > > page->index, GFP_KERNEL)) { > > bio = do_mpage_readpage(bio, page, > > nr_pages - page_idx, > > - &last_block_in_bio, get_block); > > + &last_block_in_bio, &map_bh, > > + &first_logical_block, &map_valid, > > + get_blocks, get_block); > > Oh, function taking 9 arguments, please... this is not windows. I'm happy about suggestion to reduce the count. One of the real problems is that the buffer_head structure is extremly badly suited for the get_blocks callback. Having information like in the xfs_iomap_t structure (which is XFS bmap information container) would simplify lots of these things. > By the way, I cannot see where get_block callback is used by mpage.c > code, why is it needed? It's only used by block_read_full_page which is called in the 'confused' case.