From owner-freebsd-current Thu Feb 13 1:32:59 2003 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 252F037B401 for ; Thu, 13 Feb 2003 01:32:58 -0800 (PST) Received: from flood.ping.uio.no (flood.ping.uio.no [129.240.78.31]) by mx1.FreeBSD.org (Postfix) with ESMTP id E573E43FAF for ; Thu, 13 Feb 2003 01:32:55 -0800 (PST) (envelope-from des@ofug.org) Received: by flood.ping.uio.no (Postfix, from userid 2602) id 574D7536E; Thu, 13 Feb 2003 10:32:54 +0100 (CET) X-URL: http://www.ofug.org/~des/ X-Disclaimer: The views expressed in this message do not necessarily coincide with those of any organisation or company with which I am or have been affiliated. To: current@freebsd.org Subject: panic in propagate_priority From: Dag-Erling Smorgrav Date: Thu, 13 Feb 2003 10:32:53 +0100 Message-ID: User-Agent: Gnus/5.090014 (Oort Gnus v0.14) Emacs/21.2 (i386--freebsd) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG (panic string got lost because the serial console wasn't connected at the time) db> trace Debugger(c02f7be1,1,c412e8fc,2,c0351380) at Debugger+0x50 panic(c02f7160,4c,c0351380,c1502ee0,0) at panic+0x88 propagate_priority(c1502ee0,0,553,c02fb9d3,0) at propagate_priority+0x1ad _mtx_lock_sleep(c0351380,0,c02fb9d3,553) at _mtx_lock_sleep+0x111 _mtx_lock_flags(c0351380,0,c02fb9d3,553,0) at _mtx_lock_flags+0x4c brelse(ce6793c0) at brelse+0x15d bufdone(ce6793c0,d69bacac,c018e195,ce6793c0,c031fde0) at bufdone+0x237 biodone(ce6793c0,c031fde0,0,c02f317e,179) at biodone+0x14 g_dev_done(c4843e00,d69bacc4,c0190a18,c4843e00,d69bad1c) at g_dev_done+0x55 biodone(c4843e00,d69bad1c,c0190bc6,c1502ee0,c031fc40) at biodone+0x14 g_io_schedule_up(c1502ee0,c031fc40,c02f3b56,c02f3b56,30000) at g_io_schedule_up+ 0x18 g_up_procbody(0,d69bad48,c1502ee0,c0190b60,0) at g_up_procbody+0x66 fork_exit(c0190b60,0,d69bad48) at fork_exit+0x91 fork_trampoline() at fork_trampoline+0x1a --- trap 0x1, eip = 0, esp = 0xd69bad7c, ebp = 0 --- (kgdb) l *(propagate_priority+0x1ad) 0xc01b30ed is in propagate_priority (../../../kern/kern_mutex.c:134). 129 130 /* 131 * If lock holder is actually running, just bump priority. 132 */ 133 if (TD_IS_RUNNING(td)) { 134 td->td_priority = pri; 135 return; 136 } 137 138 #ifndef SMP Must be a race, because TD_IS_RUNNING would have bombed if td was NULL, so most likely td became NULL between lines 133 and 134. DES -- Dag-Erling Smorgrav - des@ofug.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message