ZFS committed to the FreeBSD base.

Max Laier max at love2party.net
Sun Apr 8 18:43:11 UTC 2007


On Sunday 08 April 2007 20:20, Dag-Erling Smørgrav wrote:
> Max Laier <max at 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 
members are used which messes up the storage for the mutex.  At least 
looking at the contents gives me that impression:

> $2 = {zap_objset = 0xffffff0001406410, zap_object = 12660, zap_dbuf =
> 0xffffff005ce892d0, zap_rwlock = {lock_object = { lo_name =
> 0xffffffff8081b416 "zfs:&zap->zap_rwlock", lo_type = 0xffffffff8081b416
> "zfs:&zap->zap_rwlock", lo_flags = 41615360, lo_witness_data = {
> lod_list = {stqe_next = 0x0}, lod_witness = 0x0}}, sx_lock =
> 18446742974215086080, sx_recurse = 0}, zap_ismicro = 0, zap_salt =
> 965910969, zap_u = {zap_fat = {zap_phys = 0xffffffff81670000,
> zap_num_entries_mtx = {lock_object = {lo_name = 0x70000 <Address
> 0x70000 out of bounds>, lo_type = 0x0, lo_flags = 2155822976,
> lo_witness_data = {lod_list = {stqe_next = 0x0}, lod_witness = 0x0}},
> sx_lock = 1, sx_recurse = 0}, zap_block_shift = 0}, zap_micro =
> {zap_phys = 0xffffffff81670000, zap_num_entries = 0, zap_num_chunks =
> 7, zap_alloc_next = 0, zap_avl = { avl_root = 0x0, avl_compar =
> 0xffffffff807f3f80 <mze_compare>, avl_offset = 0, avl_numnodes = 1,
> avl_size = 0}}}}

-- 
/"\  Best regards,                      | mlaier at freebsd.org
\ /  Max Laier                          | ICQ #67774661
 X   http://pf4freebsd.love2party.net/  | mlaier at EFnet
/ \  ASCII Ribbon Campaign              | Against HTML Mail and News
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20070408/0a25966a/attachment.pgp


More information about the freebsd-fs mailing list