kern/129148: [zfs] [panic] panic on concurrent writing &
rollback
Anonymous
swell.k at gmail.com
Sat Jul 11 02:30:03 UTC 2009
The following reply was made to PR kern/129148; it has been noted by GNATS.
From: Anonymous <swell.k at gmail.com>
To: bug-followup at FreeBSD.org
Cc:
Subject: Re: kern/129148: [zfs] [panic] panic on concurrent writing & rollback
Date: Sat, 11 Jul 2009 06:28:03 +0400
This panic makes rollback feature really unusable. I usually do:
# cd /usr/src (svn checkout sources)
# zfs snapshot q/usr/src at blah
# zcat ~/some_big_patch.bz2 | patch -Efsp0 -F0
...
# zfs rollback q/usr/src at blah
# zcat ~/another_big_patch.bz2 | patch -Efsp0 -F0
BANG! panics here
Here is recent one for
FreeBSD 8.0-BETA1 #0: Sat Jul 4 03:55:14 UTC 2009
root at almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386
--- panic begins here ---
$ qemu -no-kqemu -echr 3 -nographic \
-hda /dev/zvol/h/home/luser/freebsd-i386 \
-hdb /dev/zvol/h/home/luser/freebsd-i386-zpool
[...]
# zpool create q ad1
# sh crash.sh
cannot open 'q/test': dataset does not exist
load: 0.90 cmd: sh 66 [runnable] 2.53r 0.28u 1.92s 29% 1808k
Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address = 0x4c
fault code = supervisor read, page not present
instruction pointer = 0x20:0xc087c9c3
stack pointer = 0x28:0xc89f5790
frame pointer = 0x28:0xc89f57b0
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, def32 1, gran 1
processor eflags = interrupt enabled, IOPL = 0
current process = 66 (sh)
[thread pid 66 tid 100041 ]
Stopped at _sx_xlock+0x43: movl 0x10(%ebx),%eax
db> show all locks
Process 66 (sh) thread 0xc238db40 (100041)
exclusive lockmgr zfs (zfs) r = 0 (0xc2613270) locked @ /usr/src/sys/kern/vfs_subr.c:880
exclusive lockmgr zfs (zfs) r = 0 (0xc2613594) locked @ /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c:856
db> show lockedvnods
Locked vnodes
0xc261353c: tag zfs, type VDIR
usecount 2, writecount 0, refcount 2 mountedhere 0
flags (VV_ROOT)
lock type zfs: EXCL by thread 0xc238db40 (pid 66)
0xc2613218: tag zfs, type VREG
usecount 0, writecount 0, refcount 1 mountedhere 0
flags (VI_DOOMED)
lock type zfs: EXCL by thread 0xc238db40 (pid 66)
db> show all pcpu
Current CPU: 0
cpuid = 0
dynamic pcpu = 0x6aed54
curthread = 0xc238db40: pid 66 "sh"
curpcb = 0xc89f5d90
fpcurthread = 0xc238db40: pid 66 "sh"
idlethread = 0xc2156b40: pid 11 "idle: cpu0"
APIC ID = 0
currentldt = 0x50
spin locks held:
db> bt
Tracing pid 66 tid 100041 td 0xc238db40
_sx_xlock(3c,0,c24ba14d,70f,c2617ae0,...) at _sx_xlock+0x43
dmu_buf_update_user(0,c2617ae0,0,0,0,...) at dmu_buf_update_user+0x35
zfs_znode_dmu_fini(c2617ae0,c24c2fed,1114,110b,c26d5000,...) at zfs_znode_dmu_fini+0x43
zfs_freebsd_reclaim(c89f5858,1,0,c2613218,c89f587c,...) at zfs_freebsd_reclaim+0xc0
VOP_RECLAIM_APV(c24c65a0,c89f5858,0,0,c261328c,...) at VOP_RECLAIM_APV+0xa5
vgonel(c261328c,0,c0c6567e,386,0,...) at vgonel+0x1a4
vnlru_free(c0f16ef0,0,c0c6567e,3a1,c2da47ac,...) at vnlru_free+0x2d5
getnewvnode(c24c0cfc,c237778c,c24c65a0,c89f58fc,c25baa80,...) at getnewvnode+0x4a
zfs_znode_cache_constructor(c25bbe00,2,c24c1357,2fd,c2db8880,...) at zfs_znode_cache_constructor+0x2e
zfs_znode_alloc(c26d5498,0,c24c1357,2fd,c89f5978,...) at zfs_znode_alloc+0x35
zfs_mknode(c2617bc8,c89f5a60,c2d97000,c2152080,0,...) at zfs_mknode+0x286
zfs_freebsd_create(c89f5ac8,c89f5ae0,0,0,c89f5ba8,...) at zfs_freebsd_create+0x722
VOP_CREATE_APV(c24c65a0,c89f5ac8,c89f5bd4,c89f5a60,0,...) at VOP_CREATE_APV+0xa5
vn_open_cred(c89f5ba8,c89f5c5c,1a4,0,c2152080,...) at vn_open_cred+0x200
vn_open(c89f5ba8,c89f5c5c,1a4,c238f310,14,...) at vn_open+0x3b
kern_openat(c238db40,ffffff9c,28304378,0,602,...) at kern_openat+0x118
kern_open(c238db40,28304378,0,601,1b6,...) at kern_open+0x35
open(c238db40,c89f5cf8,c,c0c5ee4b,c0d3c0ac,...) at open+0x30
syscall(c89f5d38) at syscall+0x2a3
Xint0x80_syscall() at Xint0x80_syscall+0x20
--- syscall (5, FreeBSD ELF32, open), eip = 0x281d8fe3, esp = 0xbfbfe6cc, ebp = 0xbfbfe768 ---
db> ps
pid ppid pgrp uid state wmesg wchan cmd
69 0 0 0 SL tq->tq_d 0xc257141c [zil_clean]
68 67 60 0 S+ tx->tx_s 0xc27599e0 zfs
67 60 60 0 S+ wait 0xc25de7f8 sh
66 60 60 0 R+ CPU 0 sh
60 19 60 0 S+ wait 0xc25ded48 sh
57 0 0 0 SL tq->tq_d 0xc25715a4 [zil_clean]
54 0 0 0 SL zio->io_ 0xc265ab94 [txg_thread_enter]
53 0 0 0 SL tx->tx_q 0xc27599e8 [txg_thread_enter]
52 0 0 0 RL [vdev:worker ad1]
51 0 0 0 SL tq->tq_d 0xc2571668 [spa_zio]
50 0 0 0 SL tq->tq_d 0xc257172c [spa_zio]
49 0 0 0 SL tq->tq_d 0xc25717f0 [spa_zio]
48 0 0 0 SL tq->tq_d 0xc25718b4 [spa_zio]
47 0 0 0 SL tq->tq_d 0xc2571978 [spa_zio]
46 0 0 0 SL tq->tq_d 0xc2571a3c [spa_zio]
45 0 0 0 SL tq->tq_d 0xc2571b00 [spa_zio]
44 0 0 0 SL tq->tq_d 0xc2571bc4 [spa_zio]
43 0 0 0 SL tq->tq_d 0xc2571bc4 [spa_zio]
42 0 0 0 SL tq->tq_d 0xc2571bc4 [spa_zio]
41 0 0 0 SL tq->tq_d 0xc2571bc4 [spa_zio]
40 0 0 0 SL tq->tq_d 0xc2571bc4 [spa_zio]
39 0 0 0 SL tq->tq_d 0xc2571bc4 [spa_zio]
38 0 0 0 SL tq->tq_d 0xc2571bc4 [spa_zio]
37 0 0 0 SL tq->tq_d 0xc2571bc4 [spa_zio]
36 0 0 0 SL tq->tq_d 0xc2571c88 [spa_zio]
35 0 0 0 SL tq->tq_d 0xc2571c88 [spa_zio]
34 0 0 0 SL tq->tq_d 0xc2571c88 [spa_zio]
33 0 0 0 SL tq->tq_d 0xc2571c88 [spa_zio]
32 0 0 0 SL tq->tq_d 0xc2571c88 [spa_zio]
31 0 0 0 SL tq->tq_d 0xc2571c88 [spa_zio]
30 0 0 0 SL tq->tq_d 0xc2571c88 [spa_zio]
29 0 0 0 SL tq->tq_d 0xc2571c88 [spa_zio]
28 0 0 0 SL tq->tq_d 0xc2571d4c [spa_zio]
27 0 0 0 SL tq->tq_d 0xc2571e10 [spa_zio]
26 0 0 0 SL tq->tq_d 0xc2571ed4 [spa_zio]
25 0 0 0 RL [l2arc_feed_thread]
24 0 0 0 RL [arc_reclaim_thread]
23 0 0 0 RL [vaclean]
22 0 0 0 SL tq->tq_d 0xc2572048 [system_taskq]
19 1 19 0 Ss+ wait 0xc2376550 sh
18 0 0 0 SL flowclea 0xc0daa4a4 [flowcleaner]
17 0 0 0 RL [softdepflush]
16 0 0 0 RL [vnlru]
15 0 0 0 RL [syncer]
14 0 0 0 RL [bufdaemon]
9 0 0 0 SL pgzero 0xc0f23314 [pagezero]
8 0 0 0 SL psleep 0xc0f22f3c [vmdaemon]
7 0 0 0 RL [pagedaemon]
6 0 0 0 SL waiting_ 0xc0f18d5c [sctp_iterator]
5 0 0 0 SL ccb_scan 0xc0d76fd4 [xpt_thrd]
13 0 0 0 SL - 0xc0daa4a4 [yarrow]
4 0 0 0 SL - 0xc0da8264 [g_down]
3 0 0 0 SL - 0xc0da8260 [g_up]
2 0 0 0 SL - 0xc0da8258 [g_event]
12 0 0 0 WL (threaded) intr
100029 I [swi0: uart]
100028 I [irq7: ppc0]
100027 I [irq12: psm0]
100026 I [irq1: atkbd0]
100025 I [irq11: ed0]
100024 I [irq15: ata1]
100023 I [irq14: ata0]
100022 I [irq9: acpi0]
100021 I [swi6: task queue]
100020 I [swi6: Giant taskq]
100018 I [swi5: +]
100013 I [swi2: cambio]
100006 I [swi3: vm]
100005 I [swi4: clock]
100004 I [swi1: netisr 0]
11 0 0 0 RL [idle: cpu0]
1 0 1 0 SLs wait 0xc2154d48 [init]
10 0 0 0 SL audit_wo 0xc0f21f80 [audit]
0 0 0 0 SLs (threaded) kernel
100019 D - 0xc2220d40 [thread taskq]
100017 D - 0xc2221100 [kqueue taskq]
100016 D - 0xc2221140 [acpi_task_2]
100015 D - 0xc2221140 [acpi_task_1]
100014 D - 0xc2221140 [acpi_task_0]
100010 D - 0xc2138940 [firmware taskq]
100000 D sched 0xc0da8320 [swapper]
--- panic ends here ---
More information about the freebsd-fs
mailing list