From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wi0-f182.google.com (mail-wi0-f182.google.com [209.85.212.182]) by kanga.kvack.org (Postfix) with ESMTP id 28FBB6B0083 for ; Tue, 21 Oct 2014 04:22:08 -0400 (EDT) Received: by mail-wi0-f182.google.com with SMTP id bs8so270023wib.15 for ; Tue, 21 Oct 2014 01:22:07 -0700 (PDT) Received: from casper.infradead.org (casper.infradead.org. [2001:770:15f::2]) by mx.google.com with ESMTPS id n8si13735092wib.0.2014.10.21.01.22.05 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 21 Oct 2014 01:22:06 -0700 (PDT) Date: Tue, 21 Oct 2014 10:22:03 +0200 From: Peter Zijlstra Subject: Re: [RFC][PATCH 4/6] SRCU free VMAs Message-ID: <20141021082203.GL23531@worktop.programming.kicks-ass.net> References: <20141020215633.717315139@infradead.org> <20141020222841.419869904@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Sender: owner-linux-mm@kvack.org List-ID: To: Linus Torvalds Cc: Paul McKenney , Thomas Gleixner , Andrew Morton , Rik van Riel , Mel Gorman , Oleg Nesterov , Ingo Molnar , Minchan Kim , KAMEZAWA Hiroyuki , Al Viro , Lai Jiangshan , Davidlohr Bueso , Linux Kernel Mailing List , linux-mm On Mon, Oct 20, 2014 at 04:41:45PM -0700, Linus Torvalds wrote: > On Mon, Oct 20, 2014 at 2:56 PM, Peter Zijlstra wrote: > > Manage the VMAs with SRCU such that we can do a lockless VMA lookup. > > Can you explain why srcu, and not plain regular rcu? > > Especially as you then *note* some of the problems srcu can have. > Making it regular rcu would also seem to make it possible to make the > seqlock be just a seqcount, no? Ah, the reason I did the seqlock is because the read side will spin-wait for &1 to go away. If the write side is preemptible that's horrid. I used seqlock because that takes a lock (and thus disables preemption) on the write side, but I could equally have done: preempt_disable(); write_seqcount_begin(); ... write_seqcount_end(); preempt_disable(); Since the lock is indeed superfluous, we're already fully serialized by mmap_sem in this path. Using regular RCU isn't sufficient, because of PREEMPT_RCU. -- 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