emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 22.0.99 emacs dumper (?) problem


From: Chong Yidong
Subject: Re: 22.0.99 emacs dumper (?) problem
Date: 20 May 2007 23:26:46 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4

> an emacs binary built using the Fedora 7 build system will seg-fault
> immediately when run on a Fedora 7 install.  The stack trace shows
> an assert failing in the glibc malloc code (usually it's setlocale
> invoking malloc); it appears that something about the way the dumper
> preserves the malloc state between the dumping emacs and the dumped
> emacs isn't quite working.

>From reading the bugzilla entry, it appears that the problem is a set
of bugs in glibc that are exposed by the way Emacs uses
malloc_set_state.  Changing Emacs to avoid this, even if it's
possible, will probably delay the Emacs 22.1 release by another year
or so, which is undesirable.

Therefore, I propose adding the following entry to the Emacs PROBLEMS
file.


** Emacs crashes on startup on Fedora Core 7.

This appears to be due to a change in the internal format of freed
blocks introduced between glibc-2.5.90-21 and glibc-2.5.90-22.  As a
result, Emacs binaries built using older versions of glibc may crash
when run using newer versions of glibc.  For details, see

https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=239344

Rebuilding Emacs with newer versions of glibc, with the following
patch applied to the Emacs source tree, should remove the crashes.

--- emacs-22.0.95/src/Makefile.in-save  2007-05-13 11:53:01.000000000 -0700
+++ emacs-22.0.95/src/Makefile.in       2007-05-13 11:53:55.000000000 -0700
@@ -960,7 +960,7 @@
        ln temacs${EXEEXT} emacs${EXEEXT}
 #else
 #ifdef HAVE_SHM
-       LC_ALL=C $(RUN_TEMACS) -nl -batch -l loadup dump
+       MALLOC_MMAP_MAX_=0 LC_ALL=C $(RUN_TEMACS) -nl -batch -l loadup dump
 #else /* ! defined (HAVE_SHM) */
        LC_ALL=C $(RUN_TEMACS) -batch -l loadup dump
 #endif /* ! defined (HAVE_SHM) */


Are there any objections?




reply via email to

[Prev in Thread] Current Thread [Next in Thread]