From owner-freebsd-current@FreeBSD.ORG Sat Sep 11 19:59:53 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 CE17A16A4CE for ; Sat, 11 Sep 2004 19:59:53 +0000 (GMT) Received: from smtp1.netcologne.de (smtp1.netcologne.de [194.8.194.112]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0487B43D39 for ; Sat, 11 Sep 2004 19:59:53 +0000 (GMT) (envelope-from tmseck-lists@netcologne.de) Received: from laurel.tmseck.homedns.org (xdsl-213-196-248-179.netcologne.de [213.196.248.179]) by smtp1.netcologne.de (Postfix) with SMTP id 6CF7B38BDB for ; Sat, 11 Sep 2004 21:59:49 +0200 (MEST) Received: (qmail 37151 invoked by uid 1001); 11 Sep 2004 20:00:17 -0000 Date: Sat, 11 Sep 2004 21:59:55 +0200 From: Thomas-Martin Seck To: freebsd-current@freebsd.org Message-ID: <20040911195955.GB382@laurel.tmseck.homedns.org> Mail-Followup-To: freebsd-current@freebsd.org, John-Mark Gurney References: <20040911185729.GA382@laurel.tmseck.homedns.org> <20040911193523.GB72089@funkthat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20040911193523.GB72089@funkthat.com> User-Agent: Mutt/1.4.2.1i Organization: a private site in Germany X-PGP-KeyID: DF46EE05 X-PGP-Fingerprint: A38F AE66 6B11 6EB9 5D1A B67D 2444 2FE1 DF46 EE05 X-Attribution: tms cc: John-Mark Gurney Subject: Re: RELENG_5: occasional panic on shutdown 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: Sat, 11 Sep 2004 19:59:54 -0000 * John-Mark Gurney (gurney_j@resnet.uoregon.edu): > Thomas-Martin Seck wrote this message on Sat, Sep 11, 2004 at 20:57 +0200: > > Once in a while I drop into ddb when I try to shutdown my RELENG_5 > > machine from a serial console; please see below. > You forgot the back trace on this, do a: tr from the db prompt... Ok, there you are: Fatal trap 12: page fault while in kernel mode fault virtual address = 0x1c fault code = supervisor write, page not present instruction pointer = 0x8:0xc04c16cf stack pointer = 0x10:0xcc5be784 frame pointer = 0x10:0xcc5be790 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, def32 1, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 249 (syslogd) [thread 100064] Stopped at knote+0x27: cmpxchgl %ecx,0x1c(%edx) db> tr knote(c1299698,0,0,c1195640,cc5be7c0) at knote+0x27 ttwwakeup(c1299600) at ttwwakeup+0xc8 comstart(c1299600) at comstart+0x386 comparam(c1299600,c12996a4,c1299600,3,0) at comparam+0x254 sioopen(c06c2bc0,6,2000,c1195640,c06b27e0) at sioopen+0x1df spec_open(cc5be880,cc5be93c,c05392c5,cc5be880,80) at spec_open+0x2b6 spec_vnoperate(cc5be880) at spec_vnoperate+0x13 vn_open_cred(cc5be980,c06c98f8,0,c10dde00,ffffffff) at vn_open_cred+0x419 vn_open(cc5be980,c06c98f8,0,ffffffff) at vn_open+0x1e cn_devopen(c06c98c0,c1195640,0) at cn_devopen+0xac cnopen(c06c157c,6,2000,c1195640,c06a0780) at cnopen+0x41 spec_open(cc5bea84,cc5beb40,c05392c5,cc5bea84,80) at spec_open+0x2b6 spec_vnoperate(cc5bea84) at spec_vnoperate+0x13 vn_open_cred(cc5bebe4,cc5bece4,0,c10dde00,5) at vn_open_cred+0x419 vn_open(cc5bebe4,cc5bece4,0,5,0) at vn_open+0x1e kern_open(c1195640,804f220,0,6,0) at kern_open+0xe3 open(c1195640,cc5bed14,3,4,292) at open+0x18 syscall(2f,2f,2f,7,bfbfdff0) at syscall+0x27b Xint0x80_syscall() at Xint0x80_syscall+0x1f --- syscall (5, FreeBSD ELF32, open), eip = 0x280d3583, esp = 0xbfbfd9dc, ebp = 0xbfbfda58 --- db> > It is also very useful to find out the line number for the address > that it stopped at.. (knote+0x27)... you can use gdb for this: > gdb kernel.debug > l *knote+0x27 $ gdb /usr/obj/usr/src/sys/CURRENT/kernel.debug GNU gdb 6.1.1 [FreeBSD] Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-marcel-freebsd"... (gdb) l *knote+0x27 0xc04c16cf is in knote (atomic.h:154). 149 atomic.h: No such file or directory. in atomic.h (gdb) > I do have a fix that may fix this, but I can't know if it will until > I get the information above. I hope this helps. Thanks for looking into it!