From owner-cvs-all Tue May 21 14:56:22 2002 Delivered-To: cvs-all@freebsd.org Received: from srv1.cosmo-project.de (srv1.cosmo-project.de [213.83.6.106]) by hub.freebsd.org (Postfix) with ESMTP id A876F37B400; Tue, 21 May 2002 14:56:09 -0700 (PDT) Received: from cicely5.cicely.de (cicely5.cicely.de [IPv6:3ffe:400:8d0:301:200:92ff:fe9b:20e7]) (authenticated bits=0) by srv1.cosmo-project.de (8.12.3/8.12.3) with ESMTP id g4LLtvHc000589 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=OK); Tue, 21 May 2002 23:56:02 +0200 (CEST) (envelope-from ticso@cicely5.cicely.de) Received: from cicely5.cicely.de (localhost [IPv6:::1]) by cicely5.cicely.de (8.12.1/8.12.1) with ESMTP id g4LLtD95088138 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Tue, 21 May 2002 23:55:14 +0200 (CEST)?g (envelope-from ticso@cicely5.cicely.de) Received: (from ticso@localhost) by cicely5.cicely.de (8.12.1/8.12.1/Submit) id g4LLtDJO088137; Tue, 21 May 2002 23:55:13 +0200 (CEST)?g (envelope-from ticso) Date: Tue, 21 May 2002 23:55:13 +0200 From: Bernd Walter To: John Baldwin Cc: cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org Subject: Re: cvs commit: src/sys/vm uma_core.c Message-ID: <20020521215512.GB87326@cicely5.cicely.de> References: <200205201754.g4KHsnS42281@freefall.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.3.26i X-Operating-System: FreeBSD cicely5.cicely.de 5.0-CURRENT i386 Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Mon, May 20, 2002 at 02:20:19PM -0400, John Baldwin wrote: > > On 20-May-2002 John Baldwin wrote: > > jhb 2002/05/20 10:54:48 PDT > > > > Modified files: > > sys/vm uma_core.c > > Log: > > In uma_zalloc_arg(), if we are performing a M_WAITOK allocation, ensure > > that td_intr_nesting_level is 0 (like malloc() does). Since malloc() calls > > uma we can probably remove the check in malloc() for this now. Also, > > perform an extra witness check in that case to make sure we don't hold > > any locks when performing a M_WAITOK allocation. > > This revealed a lot of possible brokenness: > > > grep 'could' foo | sed -e 's/^.*could/could/' | sort | uniq -c | sort -nr > 44 could sleep with "pcm0" locked from ../../../dev/sound/pcm/sound.c:134 > 25 could sleep with "UMA lock" locked from ../../../vm/uma_core.c:1157 > 10 could sleep with "process lock" locked from ../../../kern/kern_prot.c:511 > 10 could sleep with "pccbb0" locked from ../../../dev/pccbb/pccbb.c:891 > 9 could sleep with "pcm0:play:3" locked from ../../../dev/sound/pcm/channel.c:677 > 9 could sleep with "pcm0:mixer" locked from ../../../dev/sound/pcm/sound.c:134 > 6 could sleep with "pcm0:play:1" locked from ../../../dev/sound/pcm/channel.c:677 > 5 could sleep with "process lock" locked from ../../../kern/kern_prot.c:613 > 5 could sleep with "pcm0:play:2" locked from ../../../dev/sound/pcm/channel.c:677 > 5 could sleep with "pcm0:play:0" locked from ../../../dev/sound/pcm/channel.c:677 > 4 could sleep with "rl0" locked from ../../../pci/if_rl.c:855 > 4 could sleep with "rl0" locked from ../../../pci/if_rl.c:587 > 4 could sleep with "pcm0:fake" locked from ../../../dev/sound/pcm/channel.c:677 > 3 could sleep with "sf_bufs list lock" locked from ../../../kern/uipc_syscalls.c:1578 > 2 could sleep with "rman" locked from ../../../kern/subr_rman.c:194 > 2 could sleep with "rl0" locked from ../../../pci/if_rl.c:1413 > 1 could sleep with "rl0" locked from ../../../pci/if_rl.c:1524 To add - from an alpha which serves a readed file via NFS: ../../../vm/uma_core.c:1324: could sleep with "UMA lock" locked from ../../../vm/uma_core.c:1157 -- B.Walter COSMO-Project http://www.cosmo-project.de ticso@cicely.de Usergroup info@cosmo-project.de To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message