GNU bug report logs - #7920
24.0.50; Crash in balance_an_interval + 26

Previous Next

Package: emacs;

Reported by: David Reitter <david.reitter <at> gmail.com>

Date: Wed, 26 Jan 2011 15:26:02 UTC

Severity: normal

Found in version 24.0.50

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


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

From: Edgar Gonçalves <edgar.goncalves <at> gmail.com>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: David Reitter <david.reitter <at> gmail.com>, 7920 <at> debbugs.gnu.org
Subject: Re: bug#7920: 24.0.50; Crash in balance_an_interval + 26
Date: Thu, 27 Jan 2011 16:32:55 +0000
On Jan 27, 2011, at 3:31 AM, Stefan Monnier wrote:

> Looking at the backtrace, the crash is probably not really in
> balance_an_interval; instead what happened is that Emacs got stuck in an
> infinite recursion and the OS killed the process when it reached the
> maximum allowed stack depth, which happened to be when Emacs was in
> balance_an_interval.
> 
> I couldn't find any user-provided info in the bug-report, is that right?

I'm sorry I didn't file a description with this bug report, i forgot and sent the email... But in short, this has been happening when I'm using slime to connect to an emacs-launched clojure shell process. In particular, it happens when clojure hangs, and I don't know how to collect more details at this point - next time it happens I'll provide you with more.

> If I understand the backtrace right, it seems that the infinite
> recursion went through `funcall', so it was an infinite recursion within
> Elisp, and those are supposed to be caught before reaching the
> maximum allowed stack depth thanks to limits like max-specpdl-size.
> 
> So, maybe the bug is that max-specpdl-size is larger than the OS allows,
> in which case we should try and figure out why that is: is it because
> someone set it explicitly higher (too high), or because the OS's maximum
> stack depth is lower than we thought?

Hmm, this may be indeed the case that my max-specdpl-size is too high. This is in part due to me not knowing what "too high" means for my machine - how can I calculate the optimal value? I remember having set it up to 100000 to be able to use a cedet/javasee function (guided by some solution posted on a blog whose name, i'm afraid, i can't recall). Why should Emacs set this value to anything lower than the maximum supported value, does it affect the system performance/resources?

It has been working thus far, though, except with this occasional infinite recursion using slime. I've now set that variable's value to the default (removing my customization), and I'll see if I run into more problems.

Thanks,
--
Edgar Gonçalves



This bug report was last modified 13 years and 117 days ago.

Previous Next


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