From: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: emacs-devel@gnu.org
Subject: Re: bootstrap & memory allocation troubles
Date: Sat, 14 Jan 2006 12:40:50 -0500 [thread overview]
Message-ID: <873bjqvhjn.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <20060113224220.GA91435@flame.pc> (Giorgos Keramidas's message of "Sat, 14 Jan 2006 00:42:20 +0200")
>>> Can you try and undefine HAVE_POSIX_MEMALIGN so as to tell Emacs not
>>> to use it, so we can see if it's related or if it's a completely
>>> different problem (maybe a problem with unexec)?
>>
>>> Hmmm. Comment it out HAVE_POSIX_MEMALIGN in src/config.h allows Emacs
>>> to bootstrap quite fine with the new malloc() implementation too. Very
>>> nice. At least, we know how to repeat and work around the bug now :)
>>
>> So the problem is either in the implementation of posix_memalign, or
>> in my use of it in src/alloc.c.
>>
>> Can you try and rebuilt with -DENABLE_CHECKING so as to activate the
>> `eassert' I have sprinkled in the src/alloc.c code?
>>
>> Just to be sure, try with -DENABLE_CHECKING for both cases (with and
>> without HAVE_POSIX_MEMALIGN).
>>
>> Since Emacs's posix_memalign code has already been used for more than
>> a year under GNU/Linux and probably more platforms, I'm tempted to say
>> the bug is in FreeBSD's new implementation. But you never know.
> I configured Emacs with:
> env CC='cc' CPPFLAGS='-DENABLE_CHECKING' MAKE='gmake' \
> ./configure --prefix="$HOME/opt" --without-x
> On FreeBSD 7.0-CURRENT (amd64) with -DENABLE_CHECKING and the current
> posix_memalign(), the build crashes repeatably with:
> 2006-01-14 00:21:00.000000 - Generating autoloads for calendar/parse-time.el...
> 2006-01-14 00:21:00.000000 - Generating autoloads for calendar/parse-time.el...done
> 2006-01-14 00:21:00.000000 - Generating autoloads for progmodes/pascal.el...
> 2006-01-14 00:21:00.000000 - Generating autoloads for progmodes/pascal.el...done
> 2006-01-14 00:21:01.000000 -
> 2006-01-14 00:21:01.000000 - Emacs fatal error: alloc.c:2678: assertion failed: XTYPE (cons_free_list) == 0
Hmm... so all the assertions related to the code that uses posix_memalign
succeeded. That makes me more or more suspect it's a bug in FreeBSD's
posix_memalign. My gut feeling is that calling `free' on a block returned
by `posix_memalign' messes up the malloc library's invariants.
Stefan
next prev parent reply other threads:[~2006-01-14 17:40 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-01-13 15:52 bootstrap & memory allocation troubles Giorgos Keramidas
2006-01-13 20:26 ` Chong Yidong
2006-01-13 21:16 ` Giorgos Keramidas
2006-01-13 21:19 ` Stefan Monnier
2006-01-13 21:24 ` Giorgos Keramidas
2006-01-13 21:38 ` Giorgos Keramidas
2006-01-13 22:13 ` Stefan Monnier
2006-01-13 22:42 ` Giorgos Keramidas
2006-01-14 17:40 ` Stefan Monnier [this message]
2006-01-14 19:40 ` Gaute B Strokkenes
2006-01-14 20:00 ` Giorgos Keramidas
2006-01-14 16:14 ` Richard M. Stallman
2006-01-14 16:52 ` Giorgos Keramidas
2006-01-13 22:12 ` Giorgos Keramidas
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=873bjqvhjn.fsf-monnier+emacs@gnu.org \
--to=monnier@iro.umontreal.ca \
--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 public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).