GNU bug report logs - #66743
30.0.50; Crash when dumping reftex

Previous Next

Package: emacs;

Reported by: Ihor Radchenko <yantar92 <at> posteo.net>

Date: Wed, 25 Oct 2023 09:46:01 UTC

Severity: wishlist

Found in version 30.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: yantar92 <at> posteo.net, 66743 <at> debbugs.gnu.org
Subject: bug#66743: 30.0.50; Crash when dumping reftex
Date: Thu, 26 Oct 2023 10:04:19 +0200
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
>> Cc: yantar92 <at> posteo.net,  66743 <at> debbugs.gnu.org
>> Date: Thu, 26 Oct 2023 09:03:33 +0200
>> 
>> Gerd Möllmann <gerd.moellmann <at> gmail.com> writes:
>> 
>> > Eli Zaretskii <eliz <at> gnu.org> writes:
>> >
>> >> Emacs is always dumped with a few buffers, because temacs needs them
>> >> to do the dumping.  See this comment text from buffer.c:
>> >>
>> >> 	 Implementation notes: the buffers we carry from temacs are:
>> >> 	 " prin1", "*scratch*", " *Minibuf-0*", "*Messages*", and
>> >> 	 " *code-conversion-work*".  They are created by
>> >> 	 init_buffer_once and init_window_once (which are not called
>> >> 	 in the dumped Emacs), and by the first call to coding.c
>> >> 	 routines.
>> >
>> > Thanks.
>> >
>> > So, one idea would be to try and move the creation of these buffers from
>> > the init_*_once functions to the "normal" init functions, and see what
>> > happens. One would also have to take a closer look at coding.c, of course.
>> 
>> Actually, this is bug#59029, sort of.
>> 
>> TLDR is that the code to dump itrees is there, somewhere in git, but has
>> an infinite recursion bug. So, I guess it should first be tried to
>> revive that code and fix it (tests should also exist, IIUC).
>
> Feel free to do that, of course.

It's only a maybe from me, so far :-). I mainly chimed in because I know
the pdumper from dumping CL packages, and I also know a bit about
itrees.

BTW, it turns out the code is actually already in master
(dump_interval_node), but isn't executed because of the abort.

> However, from where I stand, we should first find and fix the other
> bugs caused by re-dumping, of the kinds described in bugs 66741 and
> 66742 (there are more problems like that).  Ideally, we need to
> understand why these problems happen, and develop a protocol for
> initializing things in a way that avoids such problems.  Only after
> that should we turn our attention to more specific aspects like itrees
> etc.  We should also have some policy for what should never be dumped,
> I think -- those will have to be nullified or deleted before dumping.

Of course.




This bug report was last modified 1 year and 203 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.