Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757490Ab0FOLKc (ORCPT ); Tue, 15 Jun 2010 07:10:32 -0400 Received: from bombadil.infradead.org ([18.85.46.34]:39304 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754849Ab0FOLKb (ORCPT ); Tue, 15 Jun 2010 07:10:31 -0400 Date: Tue, 15 Jun 2010 07:10:26 -0400 From: Christoph Hellwig To: Nick Piggin Cc: Evgeniy Polyakov , Dave Chinner , Andrew Morton , Mel Gorman , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, Chris Mason , Rik van Riel , Johannes Weiner , Christoph Hellwig , KAMEZAWA Hiroyuki Subject: Re: [PATCH 11/12] vmscan: Write out dirty pages in batch Message-ID: <20100615111026.GF31051@infradead.org> References: <1276514273-27693-12-git-send-email-mel@csn.ul.ie> <20100614231144.GG6590@dastard> <20100614162143.04783749.akpm@linux-foundation.org> <20100615003943.GK6590@dastard> <20100614183957.ad0cdb58.akpm@linux-foundation.org> <20100615032034.GR6590@dastard> <20100614211515.dd9880dc.akpm@linux-foundation.org> <20100615063643.GS6590@dastard> <20100615102822.GA4010@ioremap.net> <20100615105538.GI6138@laptop> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20100615105538.GI6138@laptop> User-Agent: Mutt/1.5.20 (2009-08-17) 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 Content-Length: 1130 Lines: 21 On Tue, Jun 15, 2010 at 08:55:38PM +1000, Nick Piggin wrote: > > What I do in fsblock is to maintain a block-nr sorted tree of dirty > blocks. This works nicely because fsblock dirty state is properly > synchronized with page dirty state. So writeout can just walk this in > order and it provides pretty optimal submission pattern of any > interleavings of data and metadata. No need for buffer boundary or > hacks like that. (needs some intelligence for delalloc, though). I think worrying about indirect blocks really doesn't matter much these days. For one thing extent based filesystems have a lot less of these, and second for a journaling filesystem we only need to log modification to the indirect blocks and not actually write them back in place during the sync. At least for XFS the actual writeback can happen a lot later, as part of the ordered list of delwri buffers. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/