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#11080: 24.0.94; Assertion failure in signal handler Date: Sat, 24 Mar 2012 11:23:31 +0200 Message-ID: <83r4witkrw.fsf@gnu.org> References: <878viqvr2x.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: dough.gmane.org 1332581115 12125 80.91.229.3 (24 Mar 2012 09:25:15 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 24 Mar 2012 09:25:15 +0000 (UTC) Cc: 11080@debbugs.gnu.org To: Andreas Schwab Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Mar 24 10:25:14 2012 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 1SBNDj-0000SU-T8 for geb-bug-gnu-emacs@m.gmane.org; Sat, 24 Mar 2012 10:25:12 +0100 Original-Received: from localhost ([::1]:32822 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SBNDi-00062i-MD for geb-bug-gnu-emacs@m.gmane.org; Sat, 24 Mar 2012 05:25:10 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:33536) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SBNDf-000609-0g for bug-gnu-emacs@gnu.org; Sat, 24 Mar 2012 05:25:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SBNDd-00086G-AS for bug-gnu-emacs@gnu.org; Sat, 24 Mar 2012 05:25:06 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:57639) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SBNDd-00085r-6i for bug-gnu-emacs@gnu.org; Sat, 24 Mar 2012 05:25:05 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1SBNha-0000CG-6w for bug-gnu-emacs@gnu.org; Sat, 24 Mar 2012 05:56:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 24 Mar 2012 09:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11080 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 11080-submit@debbugs.gnu.org id=B11080.1332582919701 (code B ref 11080); Sat, 24 Mar 2012 09:56:02 +0000 Original-Received: (at 11080) by debbugs.gnu.org; 24 Mar 2012 09:55:19 +0000 Original-Received: from localhost ([127.0.0.1]:36238 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SBNgt-0000BF-6c for submit@debbugs.gnu.org; Sat, 24 Mar 2012 05:55:19 -0400 Original-Received: from mtaout23.012.net.il ([80.179.55.175]:33834) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SBNgL-0000AF-Cx for 11080@debbugs.gnu.org; Sat, 24 Mar 2012 05:55:18 -0400 Original-Received: from conversion-daemon.a-mtaout23.012.net.il by a-mtaout23.012.net.il (HyperSendmail v2007.08) id <0M1D00H00TX1B500@a-mtaout23.012.net.il> for 11080@debbugs.gnu.org; Sat, 24 Mar 2012 11:23:32 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([84.229.241.151]) by a-mtaout23.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0M1D00HMPU379D50@a-mtaout23.012.net.il>; Sat, 24 Mar 2012 11:23:32 +0200 (IST) In-reply-to: X-012-Sender: halo1@inter.net.il X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) 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:58072 Archived-At: > From: Andreas Schwab > Date: Sat, 24 Mar 2012 09:39:46 +0100 > > > eval.c:3403: Emacs fatal error: assertion failed: !handling_signal > > I think handling_signal should only be incremented in XTread_socket if > !SYNC_INPUT. With SYNC_INPUT (which is the default) the SIGIO handler > doesn't actually call read_avail_input. Perhaps we should turn the table and ask why do we even have that eassert inside record_unwind_protect? The comment to handling_signal says: /* Set to non-zero while processing X events. Checked in Feval to make sure the Lisp interpreter isn't called from a signal handler, which is unsafe because the interpreter isn't reentrant. */ But record_unwind_protect is called from any number of places that have nothing to do with the Lisp interpreter. Like the one which triggered this bug, for example. This assertion makes all of them potential source of aborts. If indeed only re-entering Lisp is the issue here, then is record_unwind_protect really the right place for making sure we aren't?