GNU bug report logs - #30387
26.0.91; lisp_align_free is hanging Emacs on macOS 10.12

Previous Next

Package: emacs;

Reported by: "John Wiegley" <johnw <at> gnu.org>

Date: Thu, 8 Feb 2018 08:35:02 UTC

Severity: normal

Merged with 30322

Found in version 26.0.91

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 30387 in the body.
You can then email your comments to 30387 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#30387; Package emacs. (Thu, 08 Feb 2018 08:35:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to "John Wiegley" <johnw <at> gnu.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Thu, 08 Feb 2018 08:35:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: "John Wiegley" <johnw <at> gnu.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 26.0.91; lisp_align_free is hanging Emacs on macOS 10.12
Date: Thu, 08 Feb 2018 00:34:09 -0800
I've been unable to find reproducible conditions for this bug, since it only
happens after Emacs (built from emacs-26 release branch) has been running for
many hours. Basically, Emacs deadlocks -- showing the spinning beach ball of
death -- and when I sample the process using Instruments.app, I find that it's
gotten stuck in lisp_align_free.

Looking at that function, I see this loop:

      while (*tem)
	{
	  if (*tem >= (struct ablock *) abase && *tem < atop)
	    {
	      i++;
	      *tem = (*tem)->x.next_free;
	    }
	  else
	    tem = &(*tem)->x.next_free;
	}

There is no loop guard here to detect cycles, if that's what is happening.

I'll start running with full debugging on over the next few days to see if
that reveals how I'm getting stuck in this situation, but as for now, it has
required kill'ing Emacs twice in the past week.

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2




Merged 30322 30387. Request was from Noam Postavsky <npostavs <at> users.sourceforge.net> to control <at> debbugs.gnu.org. (Thu, 08 Feb 2018 12:22:02 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 30322 <at> debbugs.gnu.org and John Wiegley <johnw <at> newartisans.com> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sun, 16 Aug 2020 16:51:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 14 Sep 2020 11:24:05 GMT) Full text and rfc822 format available.

bug unarchived. Request was from Moritz Schäfer <moritz.schaefer <at> biol.ethz.ch> to control <at> debbugs.gnu.org. (Tue, 10 Nov 2020 21:34:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#30387; Package emacs. (Wed, 11 Nov 2020 00:15:01 GMT) Full text and rfc822 format available.

Message #16 received at 30387 <at> debbugs.gnu.org (full text, mbox):

From: Moritz Schäfer <moritz.schaefer <at> biol.ethz.ch>
To: <30387 <at> debbugs.gnu.org>
Subject: Emacs 27.1 on NixOS; emacs freezes as previously described
Date: Wed, 11 Nov 2020 01:13:53 +0100
[Message part 1 (text/plain, inline)]
I face the same issue as described previously by John Wiegley. After
several hours (sometimes even less than an hour), emacs freezes completely
without the option to recover it.
A backtrace also leads to lisp_align_free:

#0  0x000000000055aa0e in lisp_align_free ()
#1  0x000000000055acd9 in sweep_floats ()
#2  0x00000000005603ac in garbage_collect ()
#3  0x00000000005607e7 in Fgarbage_collect ()
...

This is especially cumbersome since I am running EXWM and have to therefore
recover my session in a tty by restarting my desktop manager.

I will add a timer to run the garbage collector every few (5) seconds so I
can hopefully track which event changes the state in a way that leads it to
the observed freezing behavior.

I report back back if I find out anything new. In the meanwhile, I am happy
for any suggestions on how to debug this issue.

-- 

Moritz Schäfer* <http://www.bsse.ethz.ch>*
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#30387; Package emacs. (Sat, 14 Nov 2020 20:11:02 GMT) Full text and rfc822 format available.

Message #19 received at 30387 <at> debbugs.gnu.org (full text, mbox):

From: Moritz Schäfer <moritz.schaefer <at> biol.ethz.ch>
To: <30387 <at> debbugs.gnu.org>
Subject: Re: Emacs 27.1 on NixOS; emacs freezes as previously described
Date: Sat, 14 Nov 2020 21:10:21 +0100
[Message part 1 (text/plain, inline)]
So far, I was not able to attribute the freezes to any provoking event.
However, I noticed that the freezes resolve after a certain amount of time
(I don't how much exactly. I just left my PC on over the night and it was
unfrozen the next morning).
[Message part 2 (text/html, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 13 Dec 2020 12:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 135 days ago.

Previous Next


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