bug-glibc
[Top][All Lists]
Advanced

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

Re: XEmacs 21.4.10 crashes with glibc 2.3.1


From: Wolfram Gloger
Subject: Re: XEmacs 21.4.10 crashes with glibc 2.3.1
Date: Mon, 4 Nov 2002 17:03:51 +0100 ("MET)

Hi,

> After upgrading from glibc 2.2.5 to 2.3.1 in Debian `sid', the unexec
> version of XEmacs builds successfully, but crashes immediately when
> invoked.  Are there reasons to believe that the new glibc might cause
> problems with the unexec'd binary?  It may be related to changes in
> malloc, see below.

Certainly possible.  However, I've personally checked xemacs-21.4.6
against the then-current glibc-2.2.90 in April, and it was working
fine.  Since then, few malloc changes have gone in.

> N.B. I don't consider this a glibc bug, I just want to try to confirm
> that it is related to the unexec process or malloc (we have an
> alternative way to "dump" Lisp now, the so-called "portable dumper").

BTW: that "portable dumper" sounds like great news, please enable by
default soon :-).

I have downloaded the 21.4.10 CVS that you mentioned and will try it
tonight.

Until then, I'll try a shot in the dark and suggest:

2002-10-07  Wolfram Gloger  <address@hidden>

        * malloc/malloc.c (sYSMALLOc): Only check for breakage due
        to foreign sbrk()'s if arena is contiguous.  Bug report from
        Bruno Haible <address@hidden>.

--- malloc.c    2002/06/11 09:36:14     1.10
+++ malloc.c    2002/10/07 15:33:46
@@ -2911,7 +2911,7 @@
     if (brk == old_end && snd_brk == (char*)(MORECORE_FAILURE))
       set_head(old_top, (size + old_size) | PREV_INUSE);
 
-    else if (old_size && brk < old_end) {
+    else if (contiguous(av) && old_size && brk < old_end) {
       /* Oops!  Someone else killed our space..  Can't touch anything.  */
       assert(0);
     }

Regards,
Wolfram.




reply via email to

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