From owner-freebsd-current@FreeBSD.ORG Fri Jun 22 19:10:56 2007 Return-Path: X-Original-To: freebsd-current@FreeBSD.org Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 973FF16A400; Fri, 22 Jun 2007 19:10:56 +0000 (UTC) (envelope-from jroberson@chesapeake.net) Received: from webaccess-cl.virtdom.com (webaccess-cl.virtdom.com [216.240.101.25]) by mx1.freebsd.org (Postfix) with ESMTP id 460AE13C45E; Fri, 22 Jun 2007 19:10:56 +0000 (UTC) (envelope-from jroberson@chesapeake.net) Received: from [192.168.1.101] (c-71-231-138-78.hsd1.or.comcast.net [71.231.138.78]) (authenticated bits=0) by webaccess-cl.virtdom.com (8.13.6/8.13.6) with ESMTP id l5MJArKK048161 (version=TLSv1/SSLv3 cipher=DHE-DSS-AES256-SHA bits=256 verify=NO); Fri, 22 Jun 2007 15:10:54 -0400 (EDT) (envelope-from jroberson@chesapeake.net) Date: Fri, 22 Jun 2007 12:10:44 -0700 (PDT) From: Jeff Roberson X-X-Sender: jroberson@10.0.0.1 To: Attilio Rao In-Reply-To: <467A3869.3020706@FreeBSD.org> Message-ID: <20070622121008.T542@10.0.0.1> References: <467A3869.3020706@FreeBSD.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-current@FreeBSD.org, Kevin Gerry Subject: Re: Kernel Panic in latest -CURRENT X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Jun 2007 19:10:56 -0000 Kevin, Can you please compile a kernel with INVARIANTS and INVARIANT_SUPPORT enabled? That would help us greatly with this problem. Thanks, Jeff On Thu, 21 Jun 2007, Attilio Rao wrote: > Kevin Gerry wrote: >> #0 doadump () at pcpu.h:195 >> 195 pcpu.h: No such file or directory. >> in pcpu.h >> (kgdb) bt >> #0 doadump () at pcpu.h:195 >> #1 0xc060cb73 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:409 >> #2 0xc060cd6f in panic (fmt=Variable "fmt" is not available. >> ) at /usr/src/sys/kern/kern_shutdown.c:563 >> #3 0xc086954c in trap_fatal (frame=0xe40d3b9c, eva=20) at >> /usr/src/sys/i386/i386/trap.c:870 >> #4 0xc0869e8c in trap (frame=0xe40d3b9c) at >> /usr/src/sys/i386/i386/trap.c:276 >> #5 0xc0853afb in calltrap () at /usr/src/sys/i386/i386/exception.s:139 >> #6 0xc063b008 in propagate_priority (td=0xc3ab5e00) at >> /usr/src/sys/kern/subr_turnstile.c:272 >> #7 0xc063b989 in turnstile_wait (ts=0xc3a9e6e0, owner=0xc3ab5e00, >> queue=Variable "queue" is not available. >> ) at /usr/src/sys/kern/subr_turnstile.c:739 >> #8 0xc060140d in _mtx_lock_sleep (m=0xc0993228, tid=3284357632, opts=0, >> file=0x0, line=0) at /usr/src/sys/kern/kern_mutex.c:395 >> #9 0xc04decd7 in em_handle_rxtx (context=0xc3b63000, pending=1) at >> /usr/src/sys/dev/em/if_em.c:1477 >> #10 0xc0639e72 in taskqueue_run (queue=0xc3be1880) at >> /usr/src/sys/kern/subr_taskqueue.c:255 >> #11 0xc063a04f in taskqueue_thread_loop (arg=0xc3b632ec) at >> /usr/src/sys/kern/subr_taskqueue.c:374 >> #12 0xc05ee896 in fork_exit (callout=0xc0639fd0 , >> arg=0xc3b632ec, frame=0xe40d3d38) >> at /usr/src/sys/kern/kern_fork.c:797 >> #13 0xc0853b70 in fork_trampoline () at >> /usr/src/sys/i386/i386/exception.s:205 >> (kgdb) list *0xc063b008 >> 0xc063b008 is in propagate_priority >> (/usr/src/sys/kern/subr_turnstile.c:273). >> 268 ts = td->td_blocked; >> 269 MPASS(ts != NULL); >> 270 MPASS(td->td_lock == &ts->ts_lock); >> 271 /* Resort td on the list if needed. */ >> 272 if (!turnstile_adjust_thread(ts, td)) { >> 273 mtx_unlock_spin(&ts->ts_lock); >> 274 return; >> 275 } >> 276 /* The thread lock is released as ts lock above. */ >> 277 } > > Jeff can better comment on it, but for what I can see it seems that > ts->ts_lock is not acquired again once the new assignment from td->td_blocked > is done and I think it should be. > > Thanks a lot for your report, > Attilio >