From owner-cvs-all@FreeBSD.ORG Sat Dec 6 18:05:54 2003 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 691C516A4CE; Sat, 6 Dec 2003 18:05:54 -0800 (PST) Received: from canning.wemm.org (canning.wemm.org [192.203.228.65]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0AE2643FCB; Sat, 6 Dec 2003 18:05:53 -0800 (PST) (envelope-from peter@wemm.org) Received: from wemm.org (localhost [127.0.0.1]) by canning.wemm.org (Postfix) with ESMTP id E909B2A7EA; Sat, 6 Dec 2003 18:05:52 -0800 (PST) (envelope-from peter@wemm.org) X-Mailer: exmh version 2.6.3 04/04/2003 with nmh-1.0.4 To: Mike Silbersack In-Reply-To: <20031206005341.D33930@odysseus.silby.com> Date: Sat, 06 Dec 2003 18:05:52 -0800 From: Peter Wemm Message-Id: <20031207020552.E909B2A7EA@canning.wemm.org> cc: Alan Cox cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/vm vm_mmap.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Dec 2003 02:05:54 -0000 Mike Silbersack wrote: > > WHOOOOOOOOOOO HOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO > > I'm not sure if any has realized it yet, but I think that this may be our > first actual deadlock condition. This means that we're actually locking > things! Heh, I can add a few deadlocks too if that'll get some more cheers :-) > Congrats, > > Mike "Silby" Silbersack > > > On Fri, 5 Dec 2003, Alan Cox wrote: > > > alc 2003/12/05 21:45:32 PST > > > > FreeBSD src repository > > > > Modified files: > > sys/vm vm_mmap.c > > Log: > > Fix a deadlock between vm_fault() and vm_mmap(): The expected lock orderi ng > > between vm_map and vnode locks is that vm_map locks are acquired first. In > > revision 1.150 mmap(2) was changed to pass a locked vnode into vm_mmap(). > > This creates a lock-order reversal when vm_mmap() calls one of the vm_map > > routines that acquires a vm_map lock. The solution implemented herein is > > to release the vnode lock in mmap() before calling vm_mmap() and reacquir e > > this lock if necessary in vm_mmap(). > > > > Approved by: re (scottl) > > Reviewed by: jeff, kan, rwatson > > > > Revision Changes Path > > 1.174 +13 -4 src/sys/vm/vm_mmap.c > > > Cheers, -Peter -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com "All of this is for nothing if we don't go to the stars" - JMS/B5