From mboxrd@z Thu Jan 1 00:00:00 1970 From: Johannes Weiner Subject: Re: [patch 6/9] mm + fs: store shadow entries in page cache Date: Wed, 27 Nov 2013 11:45:44 -0500 Message-ID: <20131127164544.GC3556@cmpxchg.org> References: <1385336308-27121-1-git-send-email-hannes@cmpxchg.org> <1385336308-27121-7-git-send-email-hannes@cmpxchg.org> <20131125231716.GJ8803@dastard> <20131126102053.GJ10022@twins.programming.kicks-ass.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Dave Chinner , Andrew Morton , Rik van Riel , Jan Kara , Vlastimil Babka , Tejun Heo , Andi Kleen , Andrea Arcangeli , Greg Thelen , Christoph Hellwig , Hugh Dickins , KOSAKI Motohiro , Mel Gorman , Minchan Kim , Michel Lespinasse , Seth Jennings , Roman Gushchin , Ozgun Erdogan , Metin Doslu , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org To: Peter Zijlstra Return-path: Content-Disposition: inline In-Reply-To: <20131126102053.GJ10022@twins.programming.kicks-ass.net> Sender: owner-linux-mm@kvack.org List-Id: linux-fsdevel.vger.kernel.org On Tue, Nov 26, 2013 at 11:20:53AM +0100, Peter Zijlstra wrote: > On Tue, Nov 26, 2013 at 10:17:16AM +1100, Dave Chinner wrote: > > void truncate_inode_pages_final(struct address_space *mapping) > > { > > mapping_set_exiting(mapping); > > if (inode->i_data.nrpages || inode->i_data.nrshadows) { > > /* > > * spinlock barrier to ensure all modifications are > > * complete before we do the final truncate > > */ > > spin_lock_irq(&mapping->tree_lock); > > spin_unlock_irq(&mapping->tree_lock); > > spin_unlock_wait() ? > > Its cheaper, but prone to starvation; its typically useful when you're > waiting for the last owner to go away and know there won't be any new > ones around. The other side is reclaim plucking pages one-by-one from the address space in LRU order. It'd be preferable to not starve the truncation side, because it is much more efficient at getting rid of those pages. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org