Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761968AbYA3RKu (ORCPT ); Wed, 30 Jan 2008 12:10:50 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1750964AbYA3RKl (ORCPT ); Wed, 30 Jan 2008 12:10:41 -0500 Received: from bombadil.infradead.org ([18.85.46.34]:58919 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751544AbYA3RKk (ORCPT ); Wed, 30 Jan 2008 12:10:40 -0500 Subject: Re: [patch 1/6] mmu_notifier: Core code From: Peter Zijlstra To: Andrea Arcangeli Cc: Christoph Lameter , Robin Holt , Avi Kivity , Izik Eidus , Nick Piggin , kvm-devel@lists.sourceforge.net, Benjamin Herrenschmidt , steiner@sgi.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, daniel.blueman@quadrics.com, Hugh Dickins In-Reply-To: <20080130153749.GN7233@v2.random> References: <20080130022909.677301714@sgi.com> <20080130022944.236370194@sgi.com> <20080130153749.GN7233@v2.random> Content-Type: text/plain Date: Wed, 30 Jan 2008 18:10:32 +0100 Message-Id: <1201713032.28547.234.camel@lappy> Mime-Version: 1.0 X-Mailer: Evolution 2.21.5 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1032 Lines: 27 On Wed, 2008-01-30 at 16:37 +0100, Andrea Arcangeli wrote: > On Tue, Jan 29, 2008 at 06:29:10PM -0800, Christoph Lameter wrote: > > +void mmu_notifier_release(struct mm_struct *mm) > > +{ > > + struct mmu_notifier *mn; > > + struct hlist_node *n, *t; > > + > > + if (unlikely(!hlist_empty(&mm->mmu_notifier.head))) { > > + rcu_read_lock(); > > + hlist_for_each_entry_safe_rcu(mn, n, t, > > + &mm->mmu_notifier.head, hlist) { > > + hlist_del_rcu(&mn->hlist); > > This will race and kernel crash against mmu_notifier_register in > SMP. You should resurrect the per-mmu_notifier_head lock in my last > patch (except it can be converted from a rwlock_t to a regular > spinlock_t) and drop the mmap_sem from > mmu_notifier_register/unregister. Agreed, sorry for this oversight. -- 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/