Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1762033AbYCGSqE (ORCPT ); Fri, 7 Mar 2008 13:46:04 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1757423AbYCGSpz (ORCPT ); Fri, 7 Mar 2008 13:45:55 -0500 Received: from host36-195-149-62.serverdedicati.aruba.it ([62.149.195.36]:41889 "EHLO mx.cpushare.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756857AbYCGSpy (ORCPT ); Fri, 7 Mar 2008 13:45:54 -0500 Date: Fri, 7 Mar 2008 19:45:52 +0100 From: Andrea Arcangeli To: Peter Zijlstra Cc: Christoph Lameter , Jack Steiner , Nick Piggin , akpm@linux-foundation.org, Robin Holt , Avi Kivity , kvm-devel@lists.sourceforge.net, general@lists.openfabrics.org, Steve Wise , Roland Dreier , Kanoj Sarcar , linux-kernel@vger.kernel.org, linux-mm@kvack.org, daniel.blueman@quadrics.com Subject: Re: [PATCH] 3/4 combine RCU with seqlock to allow mmu notifier methods to sleep (#v9 was 1/4) Message-ID: <20080307184552.GL24114@v2.random> References: <20080304133020.GC5301@v2.random> <20080304222030.GB8951@v2.random> <20080307151722.GD24114@v2.random> <20080307152328.GE24114@v2.random> <1204908762.8514.114.camel@twins> <20080307175019.GK24114@v2.random> <1204912895.8514.120.camel@twins> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1204912895.8514.120.camel@twins> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1389 Lines: 27 On Fri, Mar 07, 2008 at 07:01:35PM +0100, Peter Zijlstra wrote: > The reason Christoph can do without RCU is because he doesn't allow > unregister, and as soon as you drop that you'll end up with something Not sure to follow, what do you mean "he doesn't allow"? We'll also have to rip unregister regardless after you pointed out the ->release won't be called after calling my mmu_notifier_unregister in 3/4. If you figured out how to retain mmu_notifier_unregister I'm not seeing it anymore. > Curious problem indeed. Would it make sense to require registering these > MMU notifiers when the process is still single threaded along with the > requirement that they can never be removed again from a running process? I'm afraid that won't help much (even if the mmu notifiers users could cope with that restriction like KVM can) because the VM will run concurrently in another CPU despite the task is single threaded. See 2/4 in try_to_unmap_cluster: _start/end are not only invoked in the context of the current task. PS. this problem I pointed out of _end possibly called before _begin is the same for #v9 and EMM V1 as far as I can tell. -- 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/