From owner-freebsd-bugs Tue Apr 16 9: 0:54 2002 Delivered-To: freebsd-bugs@hub.freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 9061E37B41A for ; Tue, 16 Apr 2002 09:00:06 -0700 (PDT) Received: (from gnats@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g3GG06Z46536; Tue, 16 Apr 2002 09:00:06 -0700 (PDT) (envelope-from gnats) Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id A2FA937B41A for ; Tue, 16 Apr 2002 08:52:59 -0700 (PDT) Received: (from nobody@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g3GFqxb45148; Tue, 16 Apr 2002 08:52:59 -0700 (PDT) (envelope-from nobody) Message-Id: <200204161552.g3GFqxb45148@freefall.freebsd.org> Date: Tue, 16 Apr 2002 08:52:59 -0700 (PDT) From: "Richard S. Conto" To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-1.0 Subject: kern/37144: panic: biodone: Zero vnode ref count ... shortly after boot from ata-disk.c Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org >Number: 37144 >Category: kern >Synopsis: panic: biodone: Zero vnode ref count ... shortly after boot from ata-disk.c >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Apr 16 09:00:06 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Richard S. Conto >Release: 4.5-STABLE (April 15, ~10:00 AM EDT) >Organization: Merit Network, Inc. >Environment: Doesn't stay up long enough to get a uname -a out of it. >Description: See also kern/36790 After building a kernel with the option VFS_BIO_DEBUG, I get a string of messages like this: getblk: vmioing file type 4??? and getblk: vmioing file type 2??? eventually leading to: panic: biodone: zero vnode ref count I am unable to get a kernel core dump (savecore), even though I've long had it enabled (and have successfully done so in the past.) My laptop has to be powered off/on to re-boot, so any kernel core in memory is lost. Also, this bug is corrupting my filesystems, so even if I can reboot without power on/off, and the savecore runs, the filesystem doesn't keep the data. I've instrumented 'biodone()' and 'getblk()' the way I did in pr kern/36790 and discovered that the panic is coming from ata-disk.c line 694, which is the same place as before, in `ad_interrupt()'. The 'getblk()' calls are coming from vfs_bio.c line 508, wbich is at the begining of 'bread()'. dmesg (from an older, working kernel) reports: Copyright (c) 1992-2002 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 4.5-STABLE #1: Tue Mar 19 12:27:41 EST 2002 root@x25.family:/usr/src/sys/compile/INSPIRON3K Timecounter "i8254" frequency 1193182 Hz CPU: Pentium/P55C (quarter-micron) (200.46-MHz 586-class CPU) Origin = "GenuineIntel" Id = 0x581 Stepping = 1 Features=0x8001bf real memory = 150994944 (147456K bytes) avail memory = 142159872 (138828K bytes) Preloaded elf kernel "kernel.old" at 0xc0476000. Intel Pentium detected, installing workaround for F00F bug netsmb_dev: loaded md0: Malloc disk Using $PIR table, 3 entries at 0xc00fdf90 npx0: on motherboard npx0: INT 16 interface pcib0: on motherboard pci0: on pcib0 isab0: at device 1.0 on pci0 isa0: on isab0 atapci0: port 0xfcf0-0xfcff at device 1.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: at device 1.2 on pci0 uhci0: Could not map ports device_probe_and_attach: uhci0 attach returned 6 chip1: port 0x2180-0x218f at device 1.3 on pci0 pci0: at 2.0 pcic0: at device 4.0 on pci0 pcic0: PCI Memory allocated: 0x44000000 pcic0: Polling mode pcic0: TI113X PCI Config Reg: [speaker enable][CSC serial isa irq] pccard0: on pcic0 pcic1: at device 4.1 on pci0 pcic1: PCI Memory allocated: 0x44001000 pcic1: Polling mode pcic1: TI113X PCI Config Reg: [speaker enable][CSC serial isa irq] pccard1: on pcic1 orm0: