From owner-cvs-all Fri Feb 9 10:42:42 2001 Delivered-To: cvs-all@freebsd.org Received: from fw.wintelcom.net (ns1.wintelcom.net [209.1.153.20]) by hub.freebsd.org (Postfix) with ESMTP id B43E437B491; Fri, 9 Feb 2001 10:42:15 -0800 (PST) Received: (from bright@localhost) by fw.wintelcom.net (8.10.0/8.10.0) id f19IgF213822; Fri, 9 Feb 2001 10:42:15 -0800 (PST) Date: Fri, 9 Feb 2001 10:42:15 -0800 From: Alfred Perlstein To: John Baldwin Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/kern kern_exit.c Message-ID: <20010209104215.H26076@fw.wintelcom.net> References: <200102091643.f19GhJK78520@freefall.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <200102091643.f19GhJK78520@freefall.freebsd.org>; from jhb@FreeBSD.org on Fri, Feb 09, 2001 at 08:43:18AM -0800 Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG * John Baldwin [010209 10:18] wrote: > jhb 2001/02/09 08:43:18 PST > > Modified files: > sys/kern kern_exit.c > Log: > Release the proc lock around crfree() and uifree() in wait1(). It leads to > a lock order violation, and since p is already a zombie at this point, > I'm not sure that we even need all the locking currently in wait1(). My first question was: How does this lead to a lock order violation? Then I realized it might be what happens if crfree/uifree call into free() which in turn calls into Giant? It'd be helpful to explain in more detail what you found and fixed along with how and why. I see everything but 'why' in detail and if you want others to be able to get it right (or find a flaw in your logic) you'll need to be more clear. -- -Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org] "I have the heart of a child; I keep it in a jar on my desk." To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message