Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Mar 2006 14:56:27 -0800
From:      Jason Evans <jasone@FreeBSD.org>
To:        Kevin Oberman <oberman@es.net>
Cc:        freebsd-current@freebsd.org, othermark <atkin901@yahoo.com>
Subject:   Re: buildworld Stop in /usr/src/usr.sbin/bsnmpd/bsnmpd
Message-ID:  <4421D61B.80604@FreeBSD.org>
In-Reply-To: <20060322224936.3F76C45041@ptavv.es.net>
References:  <20060322224936.3F76C45041@ptavv.es.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Kevin Oberman wrote:
>>Date: Wed, 22 Mar 2006 14:24:08 -0800
>>From: Jason Evans <jasone@FreeBSD.org>
>>Kevin Oberman wrote:
>>>Not only did the fix to Makefile.inc1 not do the trick, but
>>>hand-building gnesnmptree and hand executing the commands to make the
>>>oid.h file didn't help a bit.
>>>
>>>I'm baffled. (And probably missing the obvious.)
>>
>>This isn't a very satisfying solution, but if you do the buildworld with 
>>MALLOC_OPTIONS=jZ, you will avoid the gensnmptree bug.
> 
> Thanks! It worked like a charm.
> 
> Any explanation as to why zeroing a malloc makes this work (as opposed
> to filling with 0xa5)? I'm sure confused.

If I remember correctly, gensnmptree uses a bitflag as a field in a 
malloc'ed structure.  phkmalloc uses 0xd0 for junk filling (2@11010000), 
whereas jemalloc uses 0xa5 (2@10100101).  Older versions of gensnmptree 
didn't initialize the flag, and the jemalloc junk filling in the least 
significant four bits caused it to think that the flag was set.

Jason



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4421D61B.80604>