On Monday 09 April 2007 03:07, Pawel Jakub Dawidek wrote: > On Sun, Apr 08, 2007 at 08:53:12PM +0200, Pawel Jakub Dawidek wrote: > > fzap_upgrade() changes type from 'zap_micro' to 'zap_fat' and union > > is used for this (see > > sys/contrib/opensolaris/uts/common/fs/zfs/sys/zap_impl.h), that's why > > we see this trash: > > > > 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}, > > > > I already use kmem_zalloc() (note _z_) for zap allocation in > > zap_micro.c, so Max is right, that we have to clear this structure > > here. > > > > I'm quite tired of tracking such problems, because our mechanism for > > detecting already initialized locks is too simple (based on one bit), > > so I'd prefer to improve it, or just add bzero() to mutex_init(). > > I just committed a fix. Now I do 13 bits check for already initialized > locks detection instead of standard 1 bit check. Could you repeat your > test? Will do tomorrow. Thanks. -- /"\ 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
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:08 UTC