[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: please set both MALLOC_PERTURB_ and MALLOC_CHECK_ envvars
From: |
Jim Meyering |
Subject: |
Re: please set both MALLOC_PERTURB_ and MALLOC_CHECK_ envvars |
Date: |
Sun, 29 May 2011 09:32:22 +0200 |
Paul Eggert wrote:
> On 05/27/11 14:50, Jim Meyering wrote:
>> export MALLOC_PERTURB_=$((RANDOM % 255 + 1))
>> export MALLOC_CHECK_=3
>>
>
> I tried that, on Fedora 14 x86-64, and the Emacs trunk build failed
> as follows:
>
> Compiling language/thai-word.el
>
> In toplevel form:
> language/thai-word.el:10738:5:Error: Memory exhausted--use C-x s
> then exit and restart Emacs
> make[2]: *** [language/thai-word.elc] Error 1
> make[2]: Leaving directory `/home/eggert/src/gnu/emacs/int-hash/lisp'
>
> As near as I can discover, Emacs was fine, but the malloc debugging
> caused it to use so much more memory that Emacs ran out of memory
> trying to compile thai-word.el. This is on a host with
> 8 GiB of RAM.
>
> Perhaps there is a real Emacs bug in there somewhere, but I spent
> a reasonable amount of time looking for it unsuccessfully.
Same here. I even bisected back through several years of commits to
find the one that *appeared* to introduce this problem:
http://thread.gmane.org/gmane.emacs.devel/137942
But all that was assuming a reliable compiler.
With those envvar settings, I've been bootstrapping emacs for
months, but only with this kludge:
make bootstrap RUN_TEMACS='MALLOC_CHECK_=0 ./temacs'
Yesterday, I found that I can bootstrap with no kludge at all as long
as I use the latest gcc-4.7.0. I.e., with that compiler, a plain
"make bootstrap" now succeeds in spite of my aggressive envvar settings.
Re: please set both MALLOC_PERTURB_ and MALLOC_CHECK_ envvars, Paul Eggert, 2011/05/29
- Re: please set both MALLOC_PERTURB_ and MALLOC_CHECK_ envvars,
Jim Meyering <=