Date: Tue, 24 Jun 2003 11:30:14 -0700 (PDT) From: "Pawel Malachowski" <pawmal@unia.3lo.lublin.pl> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/52916: vinum causes panic after start/stop/... cycle, easy to reproduce Message-ID: <200306241830.h5OIUE6c010401@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/52916; it has been noted by GNATS. From: "Pawel Malachowski" <pawmal@unia.3lo.lublin.pl> To: Greg 'groggy' Lehey <grog@FreeBSD.org> Cc: Freebsd-gnats-submit@FreeBSD.org Subject: Re: kern/52916: vinum causes panic after start/stop/... cycle, easy to reproduce Date: Tue, 24 Jun 2003 20:25:23 +0200 On 24 Jun 2003 at 8:33, Greg 'groggy' Lehey wrote: > [...] In particular, I need a gdb backtrace, not a ddb > backtrace. But if it looks the same, keep the dump and I'll look at > it (or get you to look at it) when I know what I'm looking for. As I said before, there was no crashdump. System tries do dump after first panic but fails with second panic. However, I discovered that when I change dumpdev from /dev/da0s1b to /dev/da1s1b (second, unused disk), dumping can be done with success. I've installed fresh 4.8-RELEASE from CD, updated kernel and userland do todays 4.8-STABLE. Also vinum resetconfig was done to remove previous configuration from second hard drive. # vinum list 0 drives: 0 volumes: 0 plexes: 0 subdisks: GENERIC kernel was used with the following additions: makeoptions DEBUG=-g pseudo-device vinum options VINUMDEBUG The following vinum-test.sh was used: #!/bin/sh i=1 while [ 1 ] do echo Start $i (sync;sync;sync;sync;sync;sync;sync;sync;sync;sync;sync;sync) & vinum start echo Stop $i vinum stop i=$(($i + 1)) done This script was running without problems about 300 times, then I started `make buildworld' and system crashed immediately. Here is backtrace: Fatal trap 12: page fault while in kernel mode fault virtual address = 0x3ef85e4c fault code = supervisor read, page not present instruction pointer = 0x8:0xc023c864 stack pointer = 0x10:0xe18d0d70 frame pointer = 0x10:0xe18d0d84 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 = 6129 (rm) interrupt mask = none trap number = 12 panic: page fault syncing disks... Fatal trap 12: page fault while in kernel mode fault virtual address = 0x3ef85e4c fault code = supervisor read, page not present instruction pointer = 0x8:0xc023c864 stack pointer = 0x10:0xe18d0b20 frame pointer = 0x10:0xe18d0b34 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 = 6129 (rm) interrupt mask = none trap number = 12 panic: page fault Uptime: 9m2s dumping to dev #da/0x20009, offset 2621464 dump 767 766 765 764 763 762 761 760 759 758 757 756 755 754 753 752 751 750 749 748 747 746 745 [cut] (kgdb) bt #0 dumpsys () at ../../kern/kern_shutdown.c:487 #1 0xc0232867 in boot (howto=260) at ../../kern/kern_shutdown.c:316 #2 0xc0232c8c in poweroff_wait (junk=0xc042a18c, howto=-1069376369) at ../../kern/kern_shutdown.c:595 #3 0xc03a620e in trap_fatal (frame=0xe18d0ae0, eva=1056464460) at ../../i386/i386/trap.c:974 #4 0xc03a5ee1 in trap_pfault (frame=0xe18d0ae0, usermode=0, eva=1056464460) at ../../i386/i386/trap.c:867 #5 0xc03a5a9f in trap (frame={tf_fs = 16, tf_es = 16, tf_ds = -814809072, tf_edi = 16, tf_esi = 1056464276, tf_ebp = -510850252, tf_isp = -510850292, tf_ebx = 4, tf_edx = 2, tf_ecx = -814803112, tf_eax = -814803112, tf_trapno = 12, tf_err = 0, tf_eip = -1071396764, tf_cs = 8, tf_eflags = 66050, tf_esp = -1023903520, tf_ss = -814803112}) at ../../i386/i386/trap.c:466 #6 0xc023c864 in dscheck (bp=0xcf6f1758, ssp=0xc31b6800) at ../../kern/subr_diskslice.c:184 #7 0xc023c4d5 in diskstrategy (bp=0xcf6f1758) at ../../kern/subr_disk.c:246 #8 0xc026bcb4 in spec_strategy (ap=0xe18d0b80) at ../../miscfs/specfs/spec_vnops.c:479 #9 0xc0258682 in bwrite (bp=0xcf6f1758) at vnode_if.h:944 #10 0xc025df46 in vop_stdbwrite (ap=0xe18d0bb0) at ../../kern/vfs_default.c:344 #11 0xc025dd91 in vop_defaultop (ap=0xe18d0bb0) at ../../kern/vfs_default.c:152 #12 0xc02589d2 in bawrite (bp=0xcf6f1758) at vnode_if.h:1193 #13 0xc026bb58 in spec_fsync (ap=0xe18d0c10) at ../../miscfs/specfs/spec_vnops.c:396 #14 0xc033fe33 in ffs_sync (mp=0xc2f82c00, waitfor=2, cred=0xc1adc900, p=0xc055a520) at vnode_if.h:558 #15 0xc0262e7b in sync (p=0xc055a520, uap=0x0) at ../../kern/vfs_syscalls.c:577 #16 0xc0232602 in boot (howto=256) at ../../kern/kern_shutdown.c:235 #17 0xc0232c8c in poweroff_wait (junk=0xc042a18c, howto=-1069376369) at ../../kern/kern_shutdown.c:595 #18 0xc03a620e in trap_fatal (frame=0xe18d0d30, eva=1056464460) at ../../i386/i386/trap.c:974 #19 0xc03a5ee1 in trap_pfault (frame=0xe18d0d30, usermode=0, eva=1056464460) at ../../i386/i386/trap.c:867 #20 0xc03a5a9f in trap (frame={tf_fs = -510853104, tf_es = -1070333936, tf_ds = -1023934448, tf_edi = 2909664, tf_esi = 1056464276, tf_ebp = -510849660, tf_isp = -510849700, tf_ebx = 12, tf_edx = 2, tf_ecx = -814693552, tf_eax = -814693552, tf_trapno = 12, tf_err = 0, tf_eip = -1071396764, tf_cs = 8, tf_eflags = 66050, tf_esp = -1023903520, tf_ss = -814693552}) at ../../i386/i386/trap.c:466 #21 0xc023c864 in dscheck (bp=0xcf70c350, ssp=0xc31b6800) at ../../kern/subr_diskslice.c:184 #22 0xc023c4d5 in diskstrategy (bp=0xcf70c350) at ../../kern/subr_disk.c:246 #23 0xc026bcb4 in spec_strategy (ap=0xe18d0dcc) at ../../miscfs/specfs/spec_vnops.c:479 #24 0xc034784d in ufs_strategy (ap=0xe18d0e10) at vnode_if.h:944 #25 0xc0347f1d in ufs_vnoperate (ap=0xe18d0e10) at ../../ufs/ufs/ufs_vnops.c:2376 #26 0xc0258682 in bwrite (bp=0xcf70c350) at vnode_if.h:944 #27 0xc025df46 in vop_stdbwrite (ap=0xe18d0e4c) at ../../kern/vfs_default.c:344 #28 0xc025dd91 in vop_defaultop (ap=0xe18d0e4c) at ../../kern/vfs_default.c:152 #29 0xc0347f1d in ufs_vnoperate (ap=0xe18d0e4c) at ../../ufs/ufs/ufs_vnops.c:2376 #30 0xc0258a09 in bowrite (bp=0xcf70c350) at vnode_if.h:1193 #31 0xc0344054 in ufs_dirremove (dvp=0xe18d4780, ip=0xc31b6600, flags=32776, isrmdir=0) at ../../ufs/ufs/ufs_lookup.c:1051 #32 0xc0345eb7 in ufs_remove (ap=0xe18d0ecc) at ../../ufs/ufs/ufs_vnops.c:721 #33 0xc0347f1d in ufs_vnoperate (ap=0xe18d0ecc) at ../../ufs/ufs/ufs_vnops.c:2376 #34 0xc026427f in unlink (p=0xd9f89520, uap=0xe18d0f80) at vnode_if.h:583 #35 0xc03a64bd in syscall2 (frame={tf_fs = 47, tf_es = 47, tf_ds = 47, tf_edi = 1, tf_esi = 134717440, tf_ebp = -1077938368, tf_isp = -510849068, tf_ebx = 134778368, tf_edx = 134778448, tf_ecx = 0, tf_eax = 10, tf_trapno = 7, tf_err = 2, tf_eip = 134523416, tf_cs = 31, tf_eflags = 643, tf_esp = -1077938412, tf_ss = 47}) at ../../i386/i386/trap.c:1175 #36 0xc0397375 in Xint0x80_syscall () #37 0x8048367 in ?? () #38 0x804813e in ?? () (kgdb) up 6 #6 0xc023c864 in dscheck (bp=0xcf6f1758, ssp=0xc31b6800) at ../../kern/subr_diskslice.c:184 184 } else { (kgdb) list 179 } 180 if (lp == NULL) { 181 labelsect = -LABELSECTOR - 1; 182 endsecno = sp->ds_size; 183 slicerel_secno = secno; 184 } else { 185 labelsect = lp->d_partitions[LABEL_PART].p_offset; 186 if (labelsect != 0) Debugger("labelsect != 0 in dscheck()"); 187 pp = &lp->d_partitions[dkpart(bp->b_dev)]; 188 endsecno = pp->p_size; (kgdb) up 15 #21 0xc023c864 in dscheck (bp=0xcf70c350, ssp=0xc31b6800) at ../../kern/subr_diskslice.c:184 184 } else { -- Paweł Małachowski
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200306241830.h5OIUE6c010401>