Skip site navigation (1)Skip section navigation (2)
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>