From owner-freebsd-bugs Mon Aug 25 12:30:06 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id MAA03425 for bugs-outgoing; Mon, 25 Aug 1997 12:30:06 -0700 (PDT) Received: (from gnats@localhost) by hub.freebsd.org (8.8.7/8.8.7) id MAA03417; Mon, 25 Aug 1997 12:30:02 -0700 (PDT) Resent-Date: Mon, 25 Aug 1997 12:30:02 -0700 (PDT) Resent-Message-Id: <199708251930.MAA03417@hub.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@FreeBSD.ORG, mark@grondar.za Received: from gratis.grondar.za (gratis.grondar.za [196.7.18.133]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id MAA03075 for ; Mon, 25 Aug 1997 12:24:26 -0700 (PDT) Received: from greenpeace.grondar.za (Gr64FG/ZDIrlqOd3DNYgK1AjgtC5uK+K@greenpeace.grondar.za [196.7.18.132]) by gratis.grondar.za (8.8.6/8.8.7) with ESMTP id VAA02753 for ; Mon, 25 Aug 1997 21:23:49 +0200 (SAT) Received: (from mark@localhost) by greenpeace.grondar.za (8.8.7/8.8.7) id VAA00549; Mon, 25 Aug 1997 21:23:49 +0200 (SAT) Message-Id: <199708251923.VAA00549@greenpeace.grondar.za> Date: Mon, 25 Aug 1997 21:23:49 +0200 (SAT) From: mark@grondar.za Reply-To: mark@grondar.za To: FreeBSD-gnats-submit@FreeBSD.ORG X-Send-Pr-Version: 3.2 Subject: kern/4382: CURRENT kernel has a "free vnode isn't" panic Sender: owner-freebsd-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk >Number: 4382 >Category: kern >Synopsis: CURRENT kernel has a "free vnode isn't" panic >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Aug 25 12:30:01 PDT 1997 >Last-Modified: >Originator: Mark Murray >Organization: YDN2FK >Release: FreeBSD 3.0-CURRENT i386 >Environment: A CURRENT kernel compiled on July 27 was fine. Kernels compiled since the 22nd Aug will panic if the (SCSI) disk gets too busy. ("Too busy" means a job like cvsup" or "cvs update"). Panic happens randomly. Colleague at work with different motherboard and SCSI controller reports similar panic. >Description: Kernel is built with the following config file: # # GA586DX -- Mark's Monster # # $Id$ machine "i386" cpu "I586_CPU" ident "GA586DX" maxusers 16 options INET #InterNETworking options FFS #Berkeley Fast Filesystem options NFS #Network Filesystem options MFS #Network Filesystem options "CD9660" #ISO 9660 Filesystem options PROCFS #Process filesystem options KERNFS #Kernel filesystem options DEVFS #Device filesystem options "COMPAT_43" #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=15 #Be pessimistic about Joe SCSI device options UCONSOLE #Allow users to grab the console options KTRACE #kernel tracing options PERFMON #Performance monitor options SYSVSHM #SYSV shared memory support options SYSVSEM #SYSV semaphore support options SYSVMSG #SYSV message queue support ## Create a SMP capable kernel (mandatory options): #options SMP # Symmetric MultiProcessor Kernel #options APIC_IO # Symmetric (APIC) I/O # ## Lets always enable the kernel debugger for SMP. #options DDB config kernel root on sd0 controller isa0 controller pci0 controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr disk fd0 at fdc0 drive 0 controller ahc0 controller scbus0 device sd0 device st0 device cd0 device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr device sio0 at isa? port "IO_COM1" tty irq 4 vector siointr device sio1 at isa? port "IO_COM2" tty irq 3 vector siointr device lpt0 at isa? port? tty irq 7 vector lptintr device npx0 at isa? port "IO_NPX" irq 13 vector npxintr device vx0 device bktr0 controller snd0 device gus0 at isa? vector gusintr pseudo-device loop pseudo-device ether pseudo-device log pseudo-device tun 2 pseudo-device vn 2 pseudo-device pty 16 pseudo-device gzip pseudo-device speaker Digging through the entrails with gdb -k reveals the following: [greenpeace] /sys/compile/GA586DX # gdb -k /kernel /var/crash/vmcore.0 GDB is free software and you are welcome to 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. GDB 4.16 (i386-unknown-freebsd), Copyright 1996 Free Software Foundation, Inc... IdlePTD 257000 current pcb at 200d9c panic: free vnode isn't #0 boot (howto=256) at ../../kern/kern_shutdown.c:292 292 dumppcb.pcb_cr3 = rcr3(); (kgdb) where #0 boot (howto=256) at ../../kern/kern_shutdown.c:292 #1 0xf01169c2 in panic (fmt=0xf01345a3 "free vnode isn't") at ../../kern/kern_shutdown.c:419 #2 0xf01345f8 in getnewvnode (tag=VT_UFS, mp=0xf0770e00, vops=0xf0744000, vpp=0xf47c8d30) at ../../kern/vfs_subr.c:364 #3 0xf019c7f4 in ffs_vget (mp=0xf0770e00, ino=130689, vpp=0xf47c8db4) at ../../ufs/ffs/ffs_vfsops.c:945 #4 0xf019fe9e in ufs_lookup (ap=0xf47c8e24) at ../../ufs/ufs/ufs_lookup.c:578 #5 0xf0133cfd in lookup (ndp=0xf47c8eac) at vnode_if.h:31 #6 0xf013384f in namei (ndp=0xf47c8eac) at ../../kern/vfs_lookup.c:157 #7 0xf0138358 in stat (p=0xf07e4000, uap=0xf47c8f94, retval=0xf47c8f84) at ../../kern/vfs_syscalls.c:1567 #8 0xf01bd9cb in syscall (frame={tf_es = 39, tf_ds = 39, tf_edi = 270209, tf_esi = 426241, tf_ebp = -272640412, tf_isp = -193163292, tf_ebx = 348992, tf_edx = -272640024, tf_ecx = 363584, tf_eax = 188, tf_trapno = 7, tf_err = 7, tf_eip = 135129521, tf_cs = 31, tf_eflags = 662, tf_esp = -272640576, tf_ss = 39}) at ../../i386/i386/trap.c:947 #9 0x80de9b1 in ?? () #10 0x422f2 in ?? () #11 0x5f94 in ?? () #12 0x3f891 in ?? () #13 0x32069 in ?? () #14 0x1721d in ?? () #15 0x31ede in ?? () #16 0x323a6 in ?? () #17 0x1721d in ?? () #18 0x31f61 in ?? () #19 0x323a6 in ?? () #20 0x1721d in ?? () #21 0x31f61 in ?? () #22 0x323a6 in ?? () #23 0x1721d in ?? () #24 0x31f61 in ?? () #25 0x323a6 in ?? () #26 0x1721d in ?? () #27 0x31f61 in ?? () #28 0x3193b in ?? () #29 0x3f796 in ?? () #30 0x3f66d in ?? () #31 0x2482c in ?? () #32 0x1095 in ?? () (kgdb) quit >How-To-Repeat: See Above >Fix: Dunno >Audit-Trail: >Unformatted: