Date: Sun, 8 Apr 2007 20:43:13 +0200 From: Max Laier <max@love2party.net> To: freebsd-current@freebsd.org Cc: freebsd-fs@freebsd.org, Dag-Erling =?iso-8859-1?q?Sm=F8rgrav?= <des@des.no>, Pawel Jakub Dawidek <pjd@freebsd.org> Subject: Re: ZFS committed to the FreeBSD base. Message-ID: <200704082043.22218.max@love2party.net> In-Reply-To: <86fy7au3r7.fsf@dwp.des.no> References: <20070406025700.GB98545@garage.freebsd.pl> <200704082014.06848.max@love2party.net> <86fy7au3r7.fsf@dwp.des.no>
next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart2124331.bhX3V1GLuj Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Sunday 08 April 2007 20:20, Dag-Erling Sm=F8rgrav wrote: > Max Laier <max@love2party.net> writes: > > The attached diff lets me survive the dump/restore. Not sure if > > this is the right fix, but seems like the union messes with mutex > > initialization. > > You need to track down where memory for the mutex (or rather zap) was > actually allocated, and stick the memset there. I suspect it > originates on the stack somewhere. Well, I assume it is zeroed already, but on the way the other union=20 members are used which messes up the storage for the mutex. At least=20 looking at the contents gives me that impression: > $2 =3D {zap_objset =3D 0xffffff0001406410, zap_object =3D 12660, zap_dbuf= =3D > 0xffffff005ce892d0, zap_rwlock =3D {lock_object =3D { lo_name =3D > 0xffffffff8081b416 "zfs:&zap->zap_rwlock", lo_type =3D 0xffffffff8081b416 > "zfs:&zap->zap_rwlock", lo_flags =3D 41615360, lo_witness_data =3D { > lod_list =3D {stqe_next =3D 0x0}, lod_witness =3D 0x0}}, sx_lock =3D > 18446742974215086080, sx_recurse =3D 0}, zap_ismicro =3D 0, zap_salt =3D > 965910969, zap_u =3D {zap_fat =3D {zap_phys =3D 0xffffffff81670000, > zap_num_entries_mtx =3D {lock_object =3D {lo_name =3D 0x70000 <Address > 0x70000 out of bounds>, lo_type =3D 0x0, lo_flags =3D 2155822976, > lo_witness_data =3D {lod_list =3D {stqe_next =3D 0x0}, lod_witness =3D 0x= 0}}, > sx_lock =3D 1, sx_recurse =3D 0}, zap_block_shift =3D 0}, zap_micro =3D > {zap_phys =3D 0xffffffff81670000, zap_num_entries =3D 0, zap_num_chunks = =3D > 7, zap_alloc_next =3D 0, zap_avl =3D { avl_root =3D 0x0, avl_compar =3D > 0xffffffff807f3f80 <mze_compare>, avl_offset =3D 0, avl_numnodes =3D 1, > avl_size =3D 0}}}} =2D-=20 /"\ Best regards, | mlaier@freebsd.org \ / Max Laier | ICQ #67774661 X http://pf4freebsd.love2party.net/ | mlaier@EFnet / \ ASCII Ribbon Campaign | Against HTML Mail and News --nextPart2124331.bhX3V1GLuj Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (FreeBSD) iD8DBQBGGTfKXyyEoT62BG0RAjPoAJ9qouEbfMAM0Pi8l8jTWfXWMwQwjACfSKgv /VqgosheeIfA/IQoBV9h6Fs= =piw2 -----END PGP SIGNATURE----- --nextPart2124331.bhX3V1GLuj--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200704082043.22218.max>