From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nick Piggin Subject: Re: [patch][rfc] mm: new address space calls Date: Sun, 1 Mar 2009 03:38:18 +0100 Message-ID: <20090301023818.GA16742@wotan.suse.de> References: <20090225104839.GG22785@wotan.suse.de> <1235595597.32346.77.camel@think.oraclecorp.com> <20090228231956.GA11191@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Chris Mason , Linux Memory Management List , linux-fsdevel@vger.kernel.org To: Christoph Hellwig Return-path: Received: from cantor.suse.de ([195.135.220.2]:58208 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750804AbZCACiV (ORCPT ); Sat, 28 Feb 2009 21:38:21 -0500 Content-Disposition: inline In-Reply-To: <20090228231956.GA11191@infradead.org> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Sat, Feb 28, 2009 at 06:19:56PM -0500, Christoph Hellwig wrote: > On Wed, Feb 25, 2009 at 03:59:57PM -0500, Chris Mason wrote: > > One problem I have with the btrfs extent state code is that I might > > choose to release the extent state in releasepage, but the VM might not > > choose to free the page. So I've got an up to date page without any of > > the rest of my state. > > > > Which of these ops covers that? ;) I'd love to help better document the > > requirements for these callbacks, I find it confusing every time. > > releasepage has also another problem. It only gets called after > discard_buffer discarded lots of valuable information from the buffers, > which gets XFS into really bad trouble as that drops information if > there is a delalloc extent. Then I think it just needs to provide its own invalidatepage? > I'd really like to see some major overhaul in that area, and that also > extende to documentation (or just naming, why is block_invalidatepage > calling into a method called ->releasepage, but there also is a > ->invalidatepage that gets called from truncate*page routines..) Those convoluted call paths are really bloody annoying.