From: Jim Meyering <jim@meyering.net>
To: Chong Yidong <cyd@stupidchicken.com>
Cc: Emacs development discussions <emacs-devel@gnu.org>
Subject: Re: please set both MALLOC_PERTURB_ and MALLOC_CHECK_ envvars
Date: Sat, 28 May 2011 22:33:38 +0200 [thread overview]
Message-ID: <87k4dasgyl.fsf@rho.meyering.net> (raw)
In-Reply-To: <87tyceo9we.fsf@stupidchicken.com> (Chong Yidong's message of "Sat, 28 May 2011 16:19:45 -0400")
Chong Yidong wrote:
> Jim Meyering <jim@meyering.net> writes:
>
>>> If you develop emacs, or even if you just build from sources regularly,
>>> on a glibc-based system, do us all a favor and build with these envvar
>>> settings:
>>>
>>> export MALLOC_PERTURB_=$((RANDOM % 255 + 1))
>>> export MALLOC_CHECK_=3
>>>
>>> Why? Because that helps you expose malloc-related problems far earlier.
>>> I've found numerous bugs that way.
>>
>> Most of that argument is valid, but I have to confess this time
>> a compiler problem appears to be at fault.
>> [...]
>> gcc version 4.7.0 20110528 (experimental) (GCC)
>>
>> everything works fine, and yes!, even with these envvar settings:
>>
>> MALLOC_PERTURB_=117
>> MALLOC_CHECK_=3
>>
>> So at least for a little while, I'll be using that.
>
> Maybe we should add these environment variables to the Hydra build.
Good idea.
> But
> what to use for MALLOC_PERTURB---117, or the value in your previous
> message?
You can use any value between 1..255 for MALLOC_PERTURB_
That chooses the byte that glibc will use to memset all freed buffers.
I set it like this in a shell start-up file:
export MALLOC_PERTURB_=$(($RANDOM % 255 + 1))
Using a random value is slightly better than using a fixed one
in case your fixed value is someday just the right/wrong value
to mask a problem. At least with a random value, if you rerun
the test in a different shell, the odds are good you won't use
the unfortunate setting again.
next prev parent reply other threads:[~2011-05-28 20:33 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-27 21:50 please set both MALLOC_PERTURB_ and MALLOC_CHECK_ envvars Jim Meyering
2011-05-27 21:57 ` Jim Meyering
2011-05-28 0:13 ` Thien-Thi Nguyen
2011-05-28 18:52 ` Jim Meyering
2011-05-30 10:30 ` Jim Meyering
2011-05-30 17:49 ` Andreas Schwab
2011-05-28 20:19 ` Chong Yidong
2011-05-28 20:33 ` Jim Meyering [this message]
2011-05-29 5:44 ` Paul Eggert
2011-05-29 7:32 ` Jim Meyering
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87k4dasgyl.fsf@rho.meyering.net \
--to=jim@meyering.net \
--cc=cyd@stupidchicken.com \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.