From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Hellwig Subject: Re: [PATCH 19/18] fs: split __inode_add_to_list Date: Tue, 12 Oct 2010 07:31:30 -0400 Message-ID: <20101012113130.GA24650@infradead.org> References: <1286515292-15882-1-git-send-email-david@fromorbit.com> <20101009080854.GA15943@infradead.org> <20101012104727.GC32255@dastard> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Christoph Hellwig , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org To: Dave Chinner Return-path: Received: from canuck.infradead.org ([134.117.69.58]:36414 "EHLO canuck.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932144Ab0JLLbd (ORCPT ); Tue, 12 Oct 2010 07:31:33 -0400 Content-Disposition: inline In-Reply-To: <20101012104727.GC32255@dastard> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Tue, Oct 12, 2010 at 09:47:27PM +1100, Dave Chinner wrote: > The only reason XFS hashed the inodes was to avoid problems in the > generic code that checked for unhashed inodes during clear_inode(). The > evict() changeover moved that unhashed check into > generic_drop_inode(), which the filesystem can override. Hence if > you add a ->drop_inode() method for XFS that just checks the link > count, we can avoid ha??hing the inodes altogether for XFS. > > I can add another patch on top of this one to do that if you want... It's unfortunately not that simple. Take a look at the unhashed check in __mark_inode_dirty. The drop_inode check could be avoided for quite a long time now. What we could do however is the same hack as JFS does in diReadSpecial().