Date: Wed, 10 Jun 2009 15:46:37 -0700 From: Kip Macy <kmacy@freebsd.org> To: Emil Mikulic <emikulic@gmail.com> Cc: freebsd-current@freebsd.org Subject: Re: (zfs) panic: lock &arg.lock already initialized Message-ID: <3c1674c90906101546l3f6d5654uceadea17c1c5a8a4@mail.gmail.com> In-Reply-To: <20090610151641.GA15528@dmr.ath.cx> References: <20090610151641.GA15528@dmr.ath.cx>
next in thread | previous in thread | raw e-mail | index | archive | help
File a PR and assign it to me. On Wed, Jun 10, 2009 at 8:16 AM, Emil Mikulic<emikulic@gmail.com> wrote: > On doing "zfs destroy" of a snapshot, I got this panic: > > Unread portion of the kernel message buffer: > panic: lock &arg.lock already initialized > cpuid =3D 0 > KDB: enter: panic > Physical memory: 4049 MB > Dumping [etc] > > (kgdb) where > [...] > #9 =A00xffffffff80568c5b in panic (fmt=3DVariable "fmt" is not available. > ) at /usr/src/sys/kern/kern_shutdown.c:558 > #10 0xffffffff8105754e in dsl_dataset_destroy_sync (arg1=3D0xffffff000560= 5c00, > =A0 =A0tag=3D0xffffff000b68c550, cr=3D0xffffff0005f79e00, tx=3D0xffffff00= 05932680) > =A0 =A0at /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/com= mon/fs/zfs/dsl_dataset.c:1422 > #11 0xffffffff81059ecb in dsl_sync_task_group_sync (dstg=3D0xffffff000b7b= 9080, > =A0 =A0tx=3D0xffffff0005932680) > =A0 =A0at /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/com= mon/fs/zfs/dsl_synctask.c:186 > #12 0xffffffff810599f3 in dsl_pool_sync (dp=3D0xffffff0005606800, txg=3D7= 5028) > =A0 =A0at /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/com= mon/fs/zfs/dsl_pool.c:316 > #13 0xffffffff810683c5 in spa_sync (spa=3D0xffffff0005549000, txg=3D75028= ) > =A0 =A0at /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/com= mon/fs/zfs/spa.c:3988 > #14 0xffffffff8107047f in txg_sync_thread (arg=3DVariable "arg" is not av= ailable. > ) > =A0 =A0at /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/com= mon/fs/zfs/txg.c:352 > #15 0xffffffff8054179a in fork_exit ( > =A0 =A0callout=3D0xffffffff810701f0 <txg_sync_thread>, arg=3D0xffffff0005= 606800, > =A0 =A0frame=3D0xffffff81297f4c90) at /usr/src/sys/kern/kern_fork.c:828 > #16 0xffffffff8081b32e in fork_trampoline () > =A0 =A0at /usr/src/sys/amd64/amd64/exception.S:552 > #17 0x0000000000000000 in ?? () > #18 0x0000000000000000 in ?? () > #19 0x0000000000000001 in ?? () > #20 0x0000000000000000 in ?? () > [more question marks...] > (kgdb) frame 10 > (kgdb) list > 1417 =A0 =A0static void > 1418 =A0 =A0dsl_dataset_drain_refs(dsl_dataset_t *ds, void *tag) > 1419 =A0 =A0{ > 1420 =A0 =A0 =A0 =A0 =A0 =A0struct refsarg arg; > 1421 > 1422 ---------> mutex_init(&arg.lock, NULL, MUTEX_DEFAULT, NULL); <------= ----- > 1423 =A0 =A0 =A0 =A0 =A0 =A0cv_init(&arg.cv, NULL, CV_DEFAULT, NULL); > 1424 =A0 =A0 =A0 =A0 =A0 =A0arg.gone =3D FALSE; > 1425 =A0 =A0 =A0 =A0 =A0 =A0(void) dmu_buf_update_user(ds->ds_dbuf, ds, &= arg, &ds->ds_phys, > 1426 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0dsl_dataset_refs_gone); > > I'm running svn r193609 on dual-core amd64, kernel config is GENERIC > minus WITNESS and WITNESS_SKIPSPIN. > > Is there any other info I can provide to help debug this? > > --Emil > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org= " > --=20 When bad men combine, the good must associate; else they will fall one by one, an unpitied sacrifice in a contemptible struggle. Edmund Burke
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3c1674c90906101546l3f6d5654uceadea17c1c5a8a4>