From owner-freebsd-current@FreeBSD.ORG Tue Nov 23 20:46:38 2004 Return-Path: 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 66DCF16A4CE for ; Tue, 23 Nov 2004 20:46:38 +0000 (GMT) Received: from relay02.pair.com (relay02.pair.com [209.68.5.16]) by mx1.FreeBSD.org (Postfix) with SMTP id 7D93043D64 for ; Tue, 23 Nov 2004 20:46:37 +0000 (GMT) (envelope-from pho@holm.cc) Received: (qmail 70313 invoked from network); 23 Nov 2004 20:46:36 -0000 Received: from unknown (HELO peter.osted.lan) (unknown) by unknown with SMTP; 23 Nov 2004 20:46:36 -0000 X-pair-Authenticated: 80.164.63.199 Received: from peter.osted.lan (localhost.osted.lan [127.0.0.1]) by peter.osted.lan (8.13.1/8.13.1) with ESMTP id iANKkZw6042836; Tue, 23 Nov 2004 21:46:35 +0100 (CET) (envelope-from pho@peter.osted.lan) Received: (from pho@localhost) by peter.osted.lan (8.13.1/8.13.1/Submit) id iANKkZBf042835; Tue, 23 Nov 2004 21:46:35 +0100 (CET) (envelope-from pho) Date: Tue, 23 Nov 2004 21:46:35 +0100 From: Peter Holm To: John Baldwin Message-ID: <20041123204635.GA42682@peter.osted.lan> References: <20041122143804.GA36649@peter.osted.lan> <200411221657.36659.jhb@FreeBSD.org> <20041123011307.GA38559@peter.osted.lan> <200411231136.49362.jhb@FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200411231136.49362.jhb@FreeBSD.org> User-Agent: Mutt/1.4.2.1i cc: freebsd-current@freebsd.org cc: current@freebsd.org Subject: Re: panic: sleeping thread owns a non-sleepable lock X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 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: Tue, 23 Nov 2004 20:46:38 -0000 On Tue, Nov 23, 2004 at 11:36:49AM -0500, John Baldwin wrote: > On Monday 22 November 2004 08:13 pm, Peter Holm wrote: > > On Mon, Nov 22, 2004 at 04:57:36PM -0500, John Baldwin wrote: > > > On Monday 22 November 2004 09:38 am, Peter Holm wrote: > > > > During stress test with GENERIC HEAD from Nov 20 08:40 UTC I got: > > > > Sleeping on "fdesc" with the following non-sleepable locks held: > > > > exclusive sleep mutex fdesc r = 0 (0xc08d15a0) locked @ > > > > kern/kern_descrip.c:2425 and then > > > > panic: sleeping thread (pid 92279) owns a non-sleepable lock > > > > > > > > http://www.holm.cc/stress/log/cons89.html > > > > > > Yes, the panic is a result of the earlier warning. Poul-Henning touched > > > this code last, so it is probably something for him to look at. I'm > > > unsure how msleep() is getting called, however. The turnstile panic is > > > not important, can you find the thread that went to sleep (should be pid > > > 92279) and get stack trace for that? > > > > The ddb trace is in the log, just before call doadump. Let me know if you > > need any gdb output. > > Ok, can you use gdb to get the source/file of 'sysctl_kern_file+0x1ae'? > I've updated to HEAD from Nov 23 08:05 UTC , but was lucky to get the same panic again :-) http://www.holm.cc/stress/log/cons90.html (kgdb) l *sysctl_kern_file+0x1ae 0xc05f3526 is in sysctl_kern_file (../../../kern/kern_descrip.c:2427). 2422 mtx_lock(&fdesc_mtx); 2423 if ((fdp = p->p_fd) == NULL) { 2424 mtx_unlock(&fdesc_mtx); 2425 continue; 2426 } 2427 FILEDESC_LOCK(fdp); 2428 for (n = 0; n < fdp->fd_nfiles; ++n) { 2429 if ((fp = fdp->fd_ofiles[n]) == NULL) 2430 continue; 2431 xf.xf_fd = n; -- Peter Holm