solaris assert triggered after panic in ZFS at mount time
Alexander Leidinger
Alexander at leidinger.net
Fri Jul 13 11:38:08 UTC 2018
Hi,
This is with r336194.
I have a dataset which panics the machine at mount time (during reboot
after a panic):
---snip---
panic: solaris assert: dmu_object_claim(zfsvfs->z_os, obj,
DMU_OT_PLAIN_FILE_CONTENTS, 0, obj_type, bonuslen, tx) == 0 (0x11 ==
0x0), file:
/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c,
line: 819
cpuid = 2
time = 1531477050
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe009ab62a00
vpanic() at vpanic+0x1a3/frame 0xfffffe009ab62a60
panic() at panic+0x43/frame 0xfffffe009ab62ac0
assfail3() at assfail3+0x2c/frame 0xfffffe009ab62ae0
zfs_mknode() at zfs_mknode+0x1a1/frame 0xfffffe009ab62f30
zfs_freebsd_create() at zfs_freebsd_create+0x56f/frame 0xfffffe009ab63000
VOP_CREATE_APV() at VOP_CREATE_APV+0xd3/frame 0xfffffe009ab63030
zfs_replay_create() at zfs_replay_create+0x60b/frame 0xfffffe009ab63250
zil_replay_log_record() at zil_replay_log_record+0x215/frame
0xfffffe009ab633a0
zil_parse() at zil_parse+0x2b5/frame 0xfffffe009ab635a0
zil_replay() at zil_replay+0xec/frame 0xfffffe009ab63600
zfsvfs_setup() at zfsvfs_setup+0xb5/frame 0xfffffe009ab63630
zfs_mount() at zfs_mount+0x72f/frame 0xfffffe009ab637c0
vfs_domount() at vfs_domount+0x734/frame 0xfffffe009ab639e0
vfs_donmount() at vfs_donmount+0x807/frame 0xfffffe009ab63a90
sys_nmount() at sys_nmount+0x50/frame 0xfffffe009ab63ac0
amd64_syscall() at amd64_syscall+0x263/frame 0xfffffe009ab63bf0
fast_syscall_common() at fast_syscall_common+0x101/frame 0xfffffe009ab63bf0
--- syscall (378, FreeBSD ELF64, sys_nmount), rip = 0x800369b3a, rsp =
0x7fffffffca98, rbp = 0x7fffffffcb10 ---
230 __asm("movq %%gs:%1,%0" : "=r" (td)
(kgdb) #0 __curthread () at ./machine/pcpu.h:230
#1 doadump (textdump=1) at /usr/src/sys/kern/kern_shutdown.c:366
#2 0xffffffff80485e11 in kern_reboot (howto=260)
at /usr/src/sys/kern/kern_shutdown.c:446
#3 0xffffffff804863f3 in vpanic (fmt=<optimized out>, ap=0xfffffe009ab62aa0)
at /usr/src/sys/kern/kern_shutdown.c:863
#4 0xffffffff80486443 in panic (fmt=<unavailable>)
at /usr/src/sys/kern/kern_shutdown.c:790
#5 0xffffffff817c524c in assfail3 (a=<unavailable>, lv=<unavailable>,
op=<unavailable>, rv=<unavailable>, f=<unavailable>, l=<optimized out>)
at /usr/src/sys/cddl/compat/opensolaris/kern/opensolaris_cmn_err.c:91
#6 0xffffffff81445641 in zfs_mknode (dzp=0xfffff8007644fc60,
vap=0xfffffe009ab630f8, tx=0xfffff8019fcbbb00, cr=0xfffff80002068000,
flag=0, zpp=0xfffffe009ab62fb8, acl_ids=0xfffffe009ab62f58)
at /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c:817
#7 0xffffffff81485b1f in zfs_create (
excl=<error reading variable: Cannot access memory at address 0x0>,
mode=<error reading variable: Cannot access memory at address 0x0>,
dvp=<optimized out>, name=<optimized out>, vap=<optimized out>,
vpp=<optimized out>, cr=<optimized out>, td=<optimized out>)
at
/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c:1883
#8 zfs_freebsd_create (ap=<optimized out>)
at
/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c:4995
#9 0xffffffff807c16f3 in VOP_CREATE_APV (vop=<optimized out>,
a=0xfffffe009ab63098) at vnode_if.c:263
#10 0xffffffff8147c4bb in VOP_CREATE (dvp=<optimized out>, vpp=0x0,
cnp=0xffffffff8082c59a, vap=0x1a400000001) at ./vnode_if.h:109
#11 zfs_replay_create (arg1=<optimized out>, arg2=<optimized out>,
byteswap=<optimized out>)
at
/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c:505
#12 0xffffffff8144e9d5 in zil_replay_log_record (zilog=0xfffff80048f54c00,
lr=0xfffffe00c7880000, zra=<optimized out>, claim_txg=<optimized out>)
at /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c:3243
#13 0xffffffff81449d65 in zil_parse (zilog=0xfffff80048f54c00,
parse_blk_func=0xffffffff8144e7b0 <zil_incr_blks>,
parse_lr_func=0xffffffff8144e7c0 <zil_replay_log_record>,
arg=0xfffffe009ab635c0, txg=11396685)
at /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c:383
#14 0xffffffff8144e76c in zil_replay (os=<optimized out>,
arg=0xfffffe00ab6be000, replay_func=0xffffffff8154b9b0
<zfs_replay_vector>)
at /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c:3297
#15 0xffffffff81482515 in zfsvfs_setup (zfsvfs=0xfffffe00ab6be000, mounting=1)
at
/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c:1278
#16 0xffffffff8147fb9f in zfs_domount (vfsp=<optimized out>,
osname=<optimized out>)
at
/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c:1433
#17 zfs_mount (vfsp=0xfffff80076958000)
at
/usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c:1915
#18 0xffffffff8054e714 in vfs_domount_first (td=<optimized out>,
fspath=<optimized out>, vp=<optimized out>, optlist=0xfffffe009ab63a28,
vfsp=<optimized out>, fsflags=<optimized out>)
at /usr/src/sys/kern/vfs_mount.c:892
#19 vfs_domount (td=0xfffff8004ebcb000, fstype=<optimized out>,
fspath=<optimized out>, fsflags=<optimized out>,
(kgdb) up 6
#6 0xffffffff81445641 in zfs_mknode (dzp=0xfffff8007644fc60,
vap=0xfffffe009ab630f8, tx=0xfffff8019fcbbb00,
cr=0xfffff80002068000, flag=0, zpp=0xfffffe009ab62fb8,
acl_ids=0xfffffe009ab62f58)
at /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c:817
817 VERIFY0(dmu_object_claim(zfsvfs->z_os, obj,
(kgdb) list
812 zfsvfs->z_norm, DMU_OT_DIRECTORY_CONTENTS,
813 obj_type, bonuslen, tx);
814 }
815 } else {
816 if (zfsvfs->z_replay) {
817 VERIFY0(dmu_object_claim(zfsvfs->z_os, obj,
818 DMU_OT_PLAIN_FILE_CONTENTS, 0,
819 obj_type, bonuslen, tx));
820 } else {
821 obj = dmu_object_alloc(zfsvfs->z_os,
(kgdb) print obj
$2 = 16393
(kgdb) print zfsvfs
$3 = (zfsvfs_t *) 0xfffffe00ab6be000
(kgdb) print obj_type
$4 = DMU_OT_SA
(kgdb) print bonuslen
$5 = <optimized out>
(kgdb) print tx
$6 = (dmu_tx_t *) 0xfffff8019fcbbb00
---snip---
Which options do I have to fix this (instead of destroying it)?
I tried already this: zdb -AAFdd mpool/iocage/jails/www-f/root/usr
but this leads to immediate panic.
Bye,
Alexander.
--
http://www.Leidinger.net Alexander at Leidinger.net: PGP 0x8F31830F9F2772BF
http://www.FreeBSD.org netchild at FreeBSD.org : PGP 0x8F31830F9F2772BF
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: Digitale PGP-Signatur
URL: <http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20180713/dacb70a0/attachment.sig>
More information about the freebsd-fs
mailing list