Subject: Re: bug#39413: 26.2; Emacs gets hung

From: Noam Postavsky <[email-masked]>
Date: Mon, 25 May 2020 08:15:29 -0400

chiaki-ishikawa-thunderbird-account <[email-masked]> writes:

> Short of lisp function, maybe I can add message print out in alloc.c
> to print out such information so that it gets recorded in *Message*
> buffer.

> It is done only when gabage-collection-message is t and there should
> be some throttling mechanism to avoid spamming the user.

> Any pointer re the hook(s) short of rewriting alloc.c is
> appreciated. Well, if worst comes to worst, I don't mind rewriting
> alloc.c to create an array of fixed size to store the last dozen or so
> GC-related information that is updated before and after invocation of
> a certain GC entry point.
> I can print that out after a long GC to learn the memory situation.
> But that sounds a bit drastic. OTOH, it may be the only way to go.

That should probably work.  I see the current
garbage_collection_messages code uses message_nolog, I guess because
growing the *Messages* buffer could also trigger GC.