Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752214AbaBLLLK (ORCPT ); Wed, 12 Feb 2014 06:11:10 -0500 Received: from cantor2.suse.de ([195.135.220.15]:37863 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751337AbaBLLLI (ORCPT ); Wed, 12 Feb 2014 06:11:08 -0500 Date: Wed, 12 Feb 2014 11:11:03 +0000 From: Mel Gorman To: Johannes Weiner Cc: Andrew Morton , Andi Kleen , Andrea Arcangeli , Bob Liu , Christoph Hellwig , Dave Chinner , Greg Thelen , Hugh Dickins , Jan Kara , KOSAKI Motohiro , Luigi Semenzato , Metin Doslu , Michel Lespinasse , Minchan Kim , Ozgun Erdogan , Peter Zijlstra , Rik van Riel , Roman Gushchin , Ryan Mallon , Tejun Heo , Vlastimil Babka , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [patch 04/10] mm: shmem: save one radix tree lookup when truncating swapped pages Message-ID: <20140212111103.GR6732@suse.de> References: <1391475222-1169-1-git-send-email-hannes@cmpxchg.org> <1391475222-1169-5-git-send-email-hannes@cmpxchg.org> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: <1391475222-1169-5-git-send-email-hannes@cmpxchg.org> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Feb 03, 2014 at 07:53:36PM -0500, Johannes Weiner wrote: > Page cache radix tree slots are usually stabilized by the page lock, > but shmem's swap cookies have no such thing. Because the overall > truncation loop is lockless, the swap entry is currently confirmed by > a tree lookup and then deleted by another tree lookup under the same > tree lock region. > > Use radix_tree_delete_item() instead, which does the verification and > deletion with only one lookup. This also allows removing the > delete-only special case from shmem_radix_tree_replace(). > > Signed-off-by: Johannes Weiner > Reviewed-by: Minchan Kim > Reviewed-by: Rik van Riel Acked-by: Mel Gorman -- Mel Gorman SUSE Labs -- 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/