all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org,  libc-alpha@sourceware.org
Subject: Re: Removal of unexec support from glibc malloc
Date: Sat, 23 Jan 2016 10:29:33 -0500	[thread overview]
Message-ID: <jwvr3h8uxlc.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <83r3h86aqf.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 23 Jan 2016 09:00:56 +0200")

> AFAICS, it happens due to the following:
>   . We call regex.c functions, which reuse an allocated buffer,
>     extending it (via realloc) as needed; that buffer gets frozen with
>     malloc arena used during dumping
>   . We delete the terminal frame used by temacs and free its resources
>   . Not 100% sure, but I think we also release/reallocate some
>     font-related stuff
> It's easy to catch all those cases by setting a breakpoint on realloc
> and free during startup.

I guess that's what happens in practice, but I'd be surprised if there
aren't more cases that can happen in theory.  I'm thinking of memory
areas allocated for Elisp data which will *usually* stay live during the
lifetime of Emacs, but which could become free if we do things like
re-define some core datastructure (e.g. I'm thinking of things like
(setq global-map (copy-keymap global-map)).


        Stefan


  reply	other threads:[~2016-01-23 15:29 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-18 12:33 Removal of unexec support from glibc malloc Florian Weimer
2016-01-18 19:20 ` John Wiegley
2016-01-18 20:27   ` Florian Weimer
2016-01-19 13:52     ` Should Glibc API be changed? Richard Stallman
2016-01-19 16:40       ` Florian Weimer
2016-01-20  2:56         ` Richard Stallman
2016-01-20 17:07           ` Florian Weimer
2016-01-23  5:56     ` Removal of unexec support from glibc malloc Stefan Monnier
2016-01-26 22:08       ` Florian Weimer
2016-01-18 22:45   ` Ali Bahrami
2016-01-18 23:45     ` John Wiegley
2016-01-19  0:45     ` Wolfgang Jenkner
2016-01-19  0:56       ` Ali Bahrami
2016-01-19  1:14     ` Dmitry Gutov
2016-01-19  1:44       ` Ken Raeburn
2016-01-19  1:59         ` Dmitry Gutov
2016-01-19  3:10           ` Ken Raeburn
2016-01-19  3:17             ` Dmitry Gutov
2016-01-19  7:03         ` Florian Weimer
2016-01-19  8:36           ` Ken Raeburn
2016-01-19 16:42           ` Eli Zaretskii
2016-01-19  1:45       ` Ali Bahrami
2016-01-19  2:03         ` Dmitry Gutov
2016-01-19 16:04         ` Eli Zaretskii
2016-01-20  2:57           ` Richard Stallman
2016-01-20  7:43             ` David Caldwell
2016-01-20  9:35               ` Eli Zaretskii
2016-01-21  3:01                 ` Richard Stallman
2016-01-21  3:00               ` Richard Stallman
2016-01-19 15:58     ` Eli Zaretskii
2016-01-19 20:37       ` Fabrice Popineau
2016-01-20  2:56         ` Richard Stallman
2016-01-23 13:51           ` Michael Sperber
2016-01-23 20:36             ` Marcus Crestani
2016-01-19 23:53   ` Sam Steingold
2016-01-18 19:24 ` Paul Eggert
2016-01-18 19:30   ` John Wiegley
2016-01-18 19:47     ` Daniel Colascione
2016-01-18 19:54       ` Zack Weinberg
2016-01-18 19:55         ` Daniel Colascione
2016-01-18 22:27           ` Joseph Myers
2016-01-18 23:16             ` Florian Weimer
2016-01-18 19:50     ` Paul Eggert
2016-01-18 19:54       ` Daniel Colascione
2016-01-18 20:02       ` Eli Zaretskii
2016-01-18 20:05         ` Daniel Colascione
2016-01-18 22:10           ` Philipp Stephani
2016-01-18 22:12             ` Daniel Colascione
2016-01-18 22:36               ` Óscar Fuentes
2016-01-23  5:50               ` Stefan Monnier
2016-01-18 20:24         ` Wolfgang Jenkner
2016-01-18 20:29           ` Eli Zaretskii
2016-01-18 20:36             ` Wolfgang Jenkner
2016-01-18 22:42           ` Paul Eggert
2016-01-18 23:23             ` Florian Weimer
2016-01-19  6:31               ` Paul Eggert
2016-01-19  9:27                 ` Florian Weimer
2016-01-19 10:14                   ` Florian Weimer
2016-01-19 13:27                 ` Wolfgang Jenkner
2016-01-19 16:58                   ` Eli Zaretskii
2016-01-30  9:38                 ` Paul Eggert
2016-01-18 22:44       ` Florian Weimer
2016-01-19  3:48         ` Eli Zaretskii
2016-01-23  5:49           ` Stefan Monnier
2016-01-23  7:00             ` Eli Zaretskii
2016-01-23 15:29               ` Stefan Monnier [this message]
2016-01-23 15:50                 ` Eli Zaretskii
2016-01-23 22:19                   ` Stefan Monnier
2016-01-23 22:52               ` Richard Stallman
2016-01-26 22:17                 ` Florian Weimer
2016-01-27  1:32                   ` Stefan Monnier
2016-01-27  3:38                   ` Eli Zaretskii
2016-01-27  9:04                     ` Florian Weimer
2016-01-27 16:02                       ` Eli Zaretskii
2016-01-27 22:54                     ` Richard Stallman
2016-01-27 22:52                   ` Richard Stallman
2016-01-18 23:15   ` Florian Weimer

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=jwvr3h8uxlc.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=libc-alpha@sourceware.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.