From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Lameter Subject: Re: [11/36] Use page_cache_xxx in fs/buffer.c Date: Fri, 31 Aug 2007 00:17:38 -0700 (PDT) Message-ID: References: <20070828190551.415127746@sgi.com> <20070828190730.220393749@sgi.com> <20070830092038.GD22586@dnb.sw.ru> <20070831065613.GH29452@kernel.dk> <20070831071142.GI29452@kernel.dk> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: Dmitry Monakhov , torvalds@linux-foundation.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Christoph Hellwig , Mel Gorman , William Lee Irwin III , David Chinner , Badari Pulavarty , Maxim Levitsky , Fengguang Wu , swin wang , totty.lu@gmail.com, "H. Peter Anvin" , joern@lazybastard.org, "Eric W. Biederman" To: Jens Axboe Return-path: Received: from netops-testserver-4-out.sgi.com ([192.48.171.29]:60940 "EHLO relay.sgi.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750721AbXHaHRk (ORCPT ); Fri, 31 Aug 2007 03:17:40 -0400 In-Reply-To: <20070831071142.GI29452@kernel.dk> Sender: linux-fsdevel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Fri, 31 Aug 2007, Jens Axboe wrote: > > Could you be more specific? > > Size of a single segment, for instance. Or if the bio crosses a dma > boundary. If your block is 64kb and the maximum segment size is 32kb, > then you would need to clone the bio and split it into two. A DMA boundary cannot be crossed AFAIK. The compound pages are aligned to the power of two boundaries and the page allocator will not create pages that cross the zone boundaries. It looks like the code will correctly signal a failure if you try to write a 64k block on a device with a maximum segment size of 32k. Isnt this okay? One would not want to use a larger block size than supported by the underlying hardware? > Things like that. This isn't a problem with single page requests, as we > based the lower possible boundaries on that. submit_bh() is used to submit a single buffer and I think that was our main concern here.