emacs-devel
[Top][All Lists]
Advanced

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

Re: Failing to GC killed buffers considered harmful


From: dancol
Subject: Re: Failing to GC killed buffers considered harmful
Date: Mon, 30 Mar 2020 08:53:28 -0700

On Mar 30, 2020 8:36 AM, Pip Cet <address@hidden> wrote:

On Sun, Mar 29, 2020 at 7:28 PM Eli Zaretskii <address@hidden> wrote:
> > From: Pip Cet <address@hidden>
> > Date: Sun, 29 Mar 2020 19:25:08 +0000
> > Cc: Eli Zaretskii <address@hidden>, address@hidden
> >
> > We could make garbage collection predictable in this one case, by not
> > marking the stack and making dump-emacs-portable a noreturn function.
>
> That'd be a mistake, because our long-term goal is to allow re-dumping
> Emacs from a running interactive session.

What would be stored? Is this long-term goal meant to store the stack,
in which case it wouldn't be a very portable dump anymore, or just the
heap, in which case (on GNU) we could simply fork(), call the noreturn
function in the child process, check whether our result file is there
in the parent process, and continue our interactive session from
there...


Anything that relies on fork is a nonstarter. Dumping the stack is completely unnecessary, since all the important state in Emacs is preserved in the heap for consultation by the event loop. Storing the stack would only let us preserve Emacs state as it exists between event delivery boundaries, and there's nothing important at that granularity.



reply via email to

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