unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Pip Cet <pipcet@gmail.com>
To: Robert Pluim <rpluim@gmail.com>
Cc: 36649@debbugs.gnu.org, Paul Eggert <eggert@cs.ucla.edu>
Subject: bug#36649: 27.0.50; pure space and pdumper
Date: Sun, 21 Jul 2019 14:36:41 +0000	[thread overview]
Message-ID: <CAOqdjBcXoYick-UbTv+D=TaeHCOG5WAamGnyqpyLTKwPOzVqOg@mail.gmail.com> (raw)
In-Reply-To: <m21ryjo624.fsf@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1065 bytes --]

On Sun, Jul 21, 2019 at 1:44 PM Robert Pluim <rpluim@gmail.com> wrote:
> >>>>> On Sun, 21 Jul 2019 12:53:21 +0000, Pip Cet <pipcet@gmail.com> said:
>     Pip> I think we should do (1) for now, since it simplifies the code enough
>     Pip> to introduce immutable objects "soon"; but until that time, we waste
>     Pip> more space on duplicate objects that we no longer know to be
>     Pip> immutable, so cannot merge.
>
>     Pip> I'm attaching a first patch that removes pure space, pinned symbols,
>     Pip> pinned objects, but keeps Fpurecopy (for hash consing), and doesn't
>     Pip> touch the Lisp codebase.
>
> This doesnʼt build for me on macOS. After adjusting the parameters to
> the call to make_hash_table in image.c, it crashes when dumping:

Thanks for testing! Indeed, I'd only verified it builds here.

My first guess is there's a symbol in the obarray which used to be
pinned, but is now collected before it is interned.

Can you try with the attached patch relative to the one I'd sent
before, and see what the output is?

[-- Attachment #2: 0001-debugging-changes.patch --]
[-- Type: text/x-patch, Size: 1408 bytes --]

From 45e8f7bdbba43f627b39957366b70dcbdc6575a8 Mon Sep 17 00:00:00 2001
From: Pip Cet <pipcet@gmail.com>
Date: Sun, 21 Jul 2019 14:35:04 +0000
Subject: [PATCH] debugging changes

---
 src/alloc.c | 3 ++-
 src/image.c | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/alloc.c b/src/alloc.c
index df8b1caf4e..1b55ad8cab 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -6428,6 +6428,7 @@ sweep_symbols (void)
         {
           if (!sym->u.s.gcmarkbit)
             {
+	      fprintf (stderr, "freeing symbol %s\n", SDATA (sym->u.s.name));
               if (sym->u.s.redirect == SYMBOL_LOCALIZED)
 		{
                   xfree (SYMBOL_BLV (sym));
@@ -6519,12 +6520,12 @@ sweep_buffers (void)
 static void
 gc_sweep (void)
 {
+  sweep_symbols ();
   sweep_strings ();
   check_string_bytes (!noninteractive);
   sweep_conses ();
   sweep_floats ();
   sweep_intervals ();
-  sweep_symbols ();
   sweep_buffers ();
   sweep_vectors ();
   pdumper_clear_marks ();
diff --git a/src/image.c b/src/image.c
index 355c849491..b21dff34d4 100644
--- a/src/image.c
+++ b/src/image.c
@@ -4596,7 +4596,7 @@ xpm_make_color_table_h (void (**put_func) (Lisp_Object, const char *, int,
   *get_func = xpm_get_color_table_h;
   return make_hash_table (hashtest_equal, DEFAULT_HASH_SIZE,
 			  DEFAULT_REHASH_SIZE, DEFAULT_REHASH_THRESHOLD,
-			  Qnil, false);
+			  Qnil);
 }
 
 static void
-- 
2.22.0


  reply	other threads:[~2019-07-21 14:36 UTC|newest]

Thread overview: 125+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-14 14:26 bug#36649: 27.0.50; pure space and pdumper Pip Cet
2019-07-21  7:28 ` Paul Eggert
2019-07-21 12:53   ` Pip Cet
2019-07-21 13:44     ` Robert Pluim
2019-07-21 14:36       ` Pip Cet [this message]
2019-07-21 15:06         ` Robert Pluim
2019-07-21 17:43           ` Pip Cet
2019-07-21 17:56             ` Robert Pluim
2019-07-21 18:07               ` Pip Cet
2019-07-21 19:12                 ` Robert Pluim
2019-07-21 19:35                   ` Pip Cet
2019-07-21 20:20                     ` Robert Pluim
2019-07-22  3:58                       ` Pip Cet
2019-07-22  8:14                         ` Robert Pluim
2019-07-22 14:30                           ` Eli Zaretskii
2019-07-22 15:46                             ` Robert Pluim
2019-07-22 15:03                           ` Pip Cet
2019-07-22 18:45                             ` Robert Pluim
2020-08-21 12:51                               ` Lars Ingebrigtsen
2020-08-21 13:04                                 ` Pip Cet
2020-08-21 13:47                                   ` Eli Zaretskii
2020-08-21 15:26                                     ` Andreas Schwab
2020-08-21 21:41                                     ` Paul Eggert
2020-08-22  3:51                                     ` Richard Stallman
2020-08-22  8:55                                     ` Pip Cet
2020-08-22  9:59                                       ` Andreas Schwab
2020-08-28 12:32                                         ` Pip Cet
2020-08-28 14:24                                           ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-11-15 15:19                                           ` Stefan Kangas
2021-03-03 15:34                                             ` Pip Cet
2021-03-04 12:55                                               ` Pip Cet
2021-03-04 14:56                                                 ` Robert Pluim
2021-03-04 15:49                                                   ` Eli Zaretskii
2021-03-04 16:42                                                     ` Robert Pluim
2021-03-04 17:07                                                       ` Eli Zaretskii
2021-03-04 17:18                                                         ` Robert Pluim
2021-03-04 16:53                                                     ` martin rudalics
2021-03-04 17:45                                                     ` Andy Moreton
2021-03-04 21:52                                                   ` Paul Eggert
2021-03-05  3:00                                                     ` Pip Cet
2021-03-05  7:20                                                       ` Eli Zaretskii
2021-03-14 22:19                                                       ` Stefan Monnier
2021-05-12 14:50                                                         ` Lars Ingebrigtsen
2021-05-12 15:01                                                           ` Eli Zaretskii
2021-05-12 17:03                                                             ` Lars Ingebrigtsen
2021-05-12 17:06                                                               ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-05-12 17:11                                                                 ` Lars Ingebrigtsen
2021-05-12 17:28                                                                   ` Eli Zaretskii
2021-05-12 17:32                                                                     ` Lars Ingebrigtsen
2021-05-12 17:42                                                                       ` Eli Zaretskii
2021-05-12 17:58                                                                         ` Lars Ingebrigtsen
2021-05-12 18:25                                                                           ` Lars Ingebrigtsen
2021-05-12 18:37                                                                             ` Eli Zaretskii
2021-05-12 18:48                                                                               ` Lars Ingebrigtsen
2021-05-12 18:52                                                                                 ` Eli Zaretskii
2021-05-12 19:07                                                                                   ` Lars Ingebrigtsen
2021-05-12 19:12                                                                                     ` Eli Zaretskii
2021-05-12 19:44                                                                                       ` Lars Ingebrigtsen
2021-05-13 14:44                                                                                         ` Pip Cet
2021-05-13 21:23                                                                                           ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-05-14  6:26                                                                                             ` Eli Zaretskii
2021-05-14  6:35                                                                                               ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-05-14  7:07                                                                                                 ` Eli Zaretskii
2021-05-16 13:46                                                                                             ` Lars Ingebrigtsen
2021-05-13 14:08                                                                                   ` Eli Zaretskii
2021-05-16 13:38                                                                                     ` Lars Ingebrigtsen
2021-05-17  8:43                                                                                       ` Paul Eggert
2021-05-17 10:25                                                                                         ` Eli Zaretskii
2021-05-17 14:15                                                                                           ` Lars Ingebrigtsen
2021-05-17 14:23                                                                                             ` Eli Zaretskii
2021-05-19 15:11                                                                                               ` Eli Zaretskii
2021-05-19 17:29                                                                                                 ` Paul Eggert
2021-05-19 17:38                                                                                                   ` Eli Zaretskii
2021-05-19 17:43                                                                                                     ` Paul Eggert
2021-05-20  8:46                                                                                                       ` Eli Zaretskii
2021-05-19 18:55                                                                                                 ` Lars Ingebrigtsen
2021-05-17 14:32                                                                                             ` Andreas Schwab
2021-05-18 13:33                                                                                               ` Lars Ingebrigtsen
2021-10-20 17:41                                                                                           ` Stefan Kangas
2021-10-20 18:18                                                                                             ` Eli Zaretskii
2021-05-17 14:13                                                                                         ` Lars Ingebrigtsen
2021-05-12 19:12                                                                           ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-05-12 18:02                                                                       ` Paul Eggert
2021-05-12 17:37                                                                     ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-05-12 17:44                                                                       ` Eli Zaretskii
2021-05-12 19:07                                                                         ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-05-12 19:17                                                                           ` Eli Zaretskii
2021-05-12 17:19                                                                 ` Eli Zaretskii
2021-05-12 17:10                                                               ` Eli Zaretskii
2021-05-12 17:24                                                                 ` Lars Ingebrigtsen
2020-08-22 17:36                                       ` Paul Eggert
2019-07-21 18:14               ` Eli Zaretskii
2022-07-01 13:46 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-01 15:51   ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-01 16:03     ` Eli Zaretskii
2022-07-01 16:33       ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-01 18:12         ` Eli Zaretskii
2022-07-01 18:58           ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-02  8:55             ` Pip Cet
2022-07-02  9:06               ` Eli Zaretskii
2022-07-02  9:16                 ` Lars Ingebrigtsen
2022-07-02  9:22                   ` Eli Zaretskii
2022-07-02 10:30                     ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-02 10:41                       ` Eli Zaretskii
2022-07-02 10:51                         ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-02 12:07                           ` Lars Ingebrigtsen
2022-07-02 12:22                             ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-02 12:41                               ` Lars Ingebrigtsen
2022-07-02 12:45                                 ` Eli Zaretskii
2022-07-02 17:23                                   ` Lars Ingebrigtsen
2022-07-02 17:31                                     ` Eli Zaretskii
2022-07-02 16:57                     ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-02 17:11                       ` Eli Zaretskii
2022-07-02 18:03                         ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-02 18:32                           ` Eli Zaretskii
2022-07-02 10:28                   ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-02 10:32                     ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-02 10:40                     ` Eli Zaretskii
2022-07-02 10:55                       ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-03  7:14 ` Gerd Möllmann
2022-07-03  7:42   ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-03  8:21     ` Gerd Möllmann
2022-07-03  9:38       ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-03  9:42         ` Gerd Möllmann
2022-07-03 10:01           ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors

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='CAOqdjBcXoYick-UbTv+D=TaeHCOG5WAamGnyqpyLTKwPOzVqOg@mail.gmail.com' \
    --to=pipcet@gmail.com \
    --cc=36649@debbugs.gnu.org \
    --cc=eggert@cs.ucla.edu \
    --cc=rpluim@gmail.com \
    /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).