Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 5 Nov 2007 13:47:30 +0200
From:      Giorgos Keramidas <keramida@freebsd.org>
To:        freebsd-current@freebsd.org
Subject:   8.0-CURRENT: acd0+geom related panic
Message-ID:  <20071105114729.GA2093@kobe.laptop>

next in thread | raw e-mail | index | archive | help
With a recent kernel (built from sources at -D '2007.11.03.10.36.03')
I can reliably panic CURRENT by simply running:

    keramida % cdcontrol -f /dev/acd0 eject

The panic happens at:

| (kgdb) bt
| #0  doadump () at pcpu.h:195
| #1  0xc05beede in boot (howto=260) at /home/build/src/sys/kern/kern_shutdown.c:409
| #2  0xc05bf19b in panic (fmt=Variable "fmt" is not available.
| ) at /home/build/src/sys/kern/kern_shutdown.c:563
| #3  0xc0575f34 in g_access (cp=0xc2cfdb00, dcr=-1, dcw=0, dce=0) at /home/build/src/sys/geom/geom_subr.c:749
| #4  0xc056ef75 in g_dev_close (dev=0xc2ccbb00, flags=1, fmt=8192, td=0xc3157cc0) at /home/build/src/sys/geom/geom_dev.c:217
| #5  0xc0556a54 in devfs_close (ap=0xd5f35a9c) at /home/build/src/sys/fs/devfs/devfs_vnops.c:369
| #6  0xc0839fd5 in VOP_CLOSE_APV (vop=0xc08c6860, a=0xd5f35a9c) at vnode_if.c:424
| #7  0xc0649433 in vn_close (vp=0xc2f8f880, flags=1, file_cred=0xc317aa00, td=0xc3157cc0) at vnode_if.h:228
| #8  0xc0649547 in vn_closefile (fp=0xc2d61d80, td=0xc3157cc0) at /home/build/src/sys/kern/vfs_vnops.c:868
| #9  0xc05541e9 in devfs_close_f (fp=0xc2d61d80, td=0xc3157cc0) at /home/build/src/sys/fs/devfs/devfs_vnops.c:384
| #10 0xc059429e in fdrop (fp=0xc2d61d80, td=0xc3157cc0) at file.h:297
| #11 0xc05957e2 in closef (fp=0xc2d61d80, td=0xc3157cc0) at /home/build/src/sys/kern/kern_descrip.c:1958
| #12 0xc0596536 in fdfree (td=0xc3157cc0) at /home/build/src/sys/kern/kern_descrip.c:1668
| #13 0xc059f9a3 in exit1 (td=0xc3157cc0, rv=0) at /home/build/src/sys/kern/kern_exit.c:271
| #14 0xc05a07fd in sys_exit (td=Could not find the frame base for "sys_exit".
| ) at /home/build/src/sys/kern/kern_exit.c:98
| #15 0xc08245f3 in syscall (frame=0xd5f35d38) at /home/build/src/sys/i386/i386/trap.c:1008
| #16 0xc080a890 in Xint0x80_syscall () at /home/build/src/sys/i386/i386/exception.s:196
| #17 0x00000033 in ?? ()
| Previous frame inner to this frame (corrupt stack?)
| (kgdb) up 3
| #3  0xc0575f34 in g_access (cp=0xc2cfdb00, dcr=-1, dcw=0, dce=0) at /home/build/src/sys/geom/geom_subr.c:749
| 749             KASSERT(dcr > 0 || dcw > 0 || dce > 0 || error == 0,
| (kgdb) list
| 744                     return (pp->error);
| 745
| 746             /* Ok then... */
| 747
| 748             error = pp->geom->access(pp, dcr, dcw, dce);
| 749             KASSERT(dcr > 0 || dcw > 0 || dce > 0 || error == 0,
| 750                 ("Geom provider %s::%s failed closing ->access()",
| 751                 pp->geom->class->name, pp->name));
| 752             if (!error) {
| 753                     /*
| (kgdb)

I still have the /boot/kernel tree and the vmcore.10 file on my laptop,
so if more data is needed, feel free to let me know ;)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20071105114729.GA2093>