From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#16603: 24.3.50; Segfault when viewing a backtrace Date: Fri, 31 Jan 2014 10:10:17 +0200 Message-ID: <83eh3o7es6.fsf@gnu.org> References: <878utw28pl.fsf@building.gnus.org> <52EB4AB4.8040004@yandex.ru> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1391155878 10181 80.91.229.3 (31 Jan 2014 08:11:18 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 31 Jan 2014 08:11:18 +0000 (UTC) Cc: larsi@gnus.org, 16603@debbugs.gnu.org To: Dmitry Antipov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Jan 31 09:11:24 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1W99C5-0007si-Nx for geb-bug-gnu-emacs@m.gmane.org; Fri, 31 Jan 2014 09:11:21 +0100 Original-Received: from localhost ([::1]:53677 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W99C5-0006Fe-3t for geb-bug-gnu-emacs@m.gmane.org; Fri, 31 Jan 2014 03:11:21 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:55141) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W99Bs-0006FH-9M for bug-gnu-emacs@gnu.org; Fri, 31 Jan 2014 03:11:13 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W99Bm-0006DA-Mq for bug-gnu-emacs@gnu.org; Fri, 31 Jan 2014 03:11:08 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:56525) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W99Bm-0006D6-Ji for bug-gnu-emacs@gnu.org; Fri, 31 Jan 2014 03:11:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1W99Bm-0002TR-CF for bug-gnu-emacs@gnu.org; Fri, 31 Jan 2014 03:11:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 31 Jan 2014 08:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 16603 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 16603-submit@debbugs.gnu.org id=B16603.13911558189447 (code B ref 16603); Fri, 31 Jan 2014 08:11:02 +0000 Original-Received: (at 16603) by debbugs.gnu.org; 31 Jan 2014 08:10:18 +0000 Original-Received: from localhost ([127.0.0.1]:42311 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1W99B3-0002SI-OK for submit@debbugs.gnu.org; Fri, 31 Jan 2014 03:10:18 -0500 Original-Received: from mtaout29.012.net.il ([80.179.55.185]:40523) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1W99B1-0002S8-R0 for 16603@debbugs.gnu.org; Fri, 31 Jan 2014 03:10:16 -0500 Original-Received: from conversion-daemon.mtaout29.012.net.il by mtaout29.012.net.il (HyperSendmail v2007.08) id <0N0900C00ALZV300@mtaout29.012.net.il> for 16603@debbugs.gnu.org; Fri, 31 Jan 2014 10:11:51 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by mtaout29.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0N09004O6ARQIS90@mtaout29.012.net.il>; Fri, 31 Jan 2014 10:11:50 +0200 (IST) In-reply-to: <52EB4AB4.8040004@yandex.ru> X-012-Sender: halo1@inter.net.il X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:84332 Archived-At: > Date: Fri, 31 Jan 2014 11:03:16 +0400 > From: Dmitry Antipov > Cc: 16603@debbugs.gnu.org > > On 01/31/2014 06:20 AM, Lars Ingebrigtsen wrote: > > > (require 'gnus-group) > > (setq debug-on-error t) > > (gnus-read-ephemeral-emacs-bug-group 16577) > > > > Choose Rotem's article, and my Emacs crashes: > > Reproduced. With the only extra eassert: > > === modified file 'src/eval.c' > --- src/eval.c 2014-01-25 03:48:29 +0000 > +++ src/eval.c 2014-01-31 06:49:49 +0000 > @@ -3191,6 +3191,7 @@ > void > record_unwind_protect (void (*function) (Lisp_Object), Lisp_Object arg) > { > + eassert (specpdl_ptr < specpdl + specpdl_size); > specpdl_ptr->unwind.kind = SPECPDL_UNWIND; > specpdl_ptr->unwind.func = function; > specpdl_ptr->unwind.arg = arg; > > I got the following backtrace: > > #14 0x00000000005eafb9 in die (msg=0x70d440 "specpdl_ptr < specpdl + specpdl_size", file=0x70c498 "../../trunk/src/eval.c", > line=3194) at ../../trunk/src/alloc.c:6761 Of course. This can be seen in Lars's backtrace (note the error Emacs is signaling in frame #28): > #24 0x0000000000549f06 in call_debugger (arg=42128966) at eval.c:323 > #25 0x0000000000548e6d in maybe_call_debugger (data=42128918, sig=12077586, > conditions=8579966) at eval.c:1724 > #26 Fsignal (error_symbol=12077586, data=42128918) at eval.c:1542 > #27 0x0000000000549039 in xsignal (error_symbol=, > data=) at eval.c:1579 > #28 0x0000000000549704 in signal_error ( > s=0x5ddc38 "Variable binding depth exceeds max-specpdl-size", arg=12026162) > at eval.c:1634 > #29 0x0000000000549792 in grow_specpdl () at eval.c:2023 > #30 0x0000000000549886 in specbind (symbol=41539506, value=41896998) > at eval.c:3138 > IIUC this is a kind of chicken-egg problem: when we're running out of specpdl > stack, we want to run a debugger, which, in turn, needs some specpdl space to run. So either we should reserve some space for the debugger, or enlarge max-specpdl-size before running the debugger, or refrain from running the debugger in this specific case.