From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dmitry Antipov Newsgroups: gmane.emacs.bugs Subject: bug#15561: Re: bug#15561: periodic timer stops running Date: Fri, 28 Feb 2014 12:03:09 +0400 Message-ID: <531042BD.8060806@dev.rtsoft.ru> References: <530FF70C.2020905@cs.ucla.edu> <530FF7A2.5000005@cs.ucla.edu> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1393574650 1481 80.91.229.3 (28 Feb 2014 08:04:10 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 28 Feb 2014 08:04:10 +0000 (UTC) Cc: 15561@debbugs.gnu.org To: Paul Eggert Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Feb 28 09:04:19 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 1WJIQb-0004WJ-1q for geb-bug-gnu-emacs@m.gmane.org; Fri, 28 Feb 2014 09:04:17 +0100 Original-Received: from localhost ([::1]:49702 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WJIQa-00065s-Ea for geb-bug-gnu-emacs@m.gmane.org; Fri, 28 Feb 2014 03:04:16 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:37850) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WJIQS-00065k-T8 for bug-gnu-emacs@gnu.org; Fri, 28 Feb 2014 03:04:13 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WJIQN-0003aV-W0 for bug-gnu-emacs@gnu.org; Fri, 28 Feb 2014 03:04:08 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:42361) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WJIQN-0003ZW-SZ for bug-gnu-emacs@gnu.org; Fri, 28 Feb 2014 03:04:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1WJIQM-0004FZ-7d for bug-gnu-emacs@gnu.org; Fri, 28 Feb 2014 03:04:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Dmitry Antipov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 28 Feb 2014 08:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 15561 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 15561-submit@debbugs.gnu.org id=B15561.139357460016243 (code B ref 15561); Fri, 28 Feb 2014 08:04:02 +0000 Original-Received: (at 15561) by debbugs.gnu.org; 28 Feb 2014 08:03:20 +0000 Original-Received: from localhost ([127.0.0.1]:43543 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WJIPf-0004Dt-8g for submit@debbugs.gnu.org; Fri, 28 Feb 2014 03:03:19 -0500 Original-Received: from mail.dev.rtsoft.ru ([213.79.90.226]:50827 helo=dev.rtsoft.ru) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WJIPY-0004DV-3R for 15561@debbugs.gnu.org; Fri, 28 Feb 2014 03:03:13 -0500 Original-Received: from localhost.localdomain (fw-int.dev.rtsoft.ru [192.168.1.70]) by dev.rtsoft.ru (Postfix) with ESMTP id BE59F41233; Fri, 28 Feb 2014 12:03:09 +0400 (MSK) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0 In-Reply-To: <530FF7A2.5000005@cs.ucla.edu> 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:86359 Archived-At: On 02/28/2014 06:42 AM, Paul Eggert wrote: > [Resending with corrected bug-report address; sorry about that.] > > Barry OReilly wrote: >> But what happens if the next timer happens to be soon, and Emacs receives SIGALRM inbetween set_alarm and unblock_timers? > > Are you talking about a SIGALRM received during the execution of do_pending_atimers, between run_timer's call to set_alarm and do_pending_atimers's call to unblock_atimers? If so, the SIGALRM should > be held by the operating system during that period, and Emacs won't be informed of the SIGALRM until unblock_atimers does its thing. Sorry, I don't see how this would cause a timer to stop. BTW, we have at least one backtrace with nested calls to timer_check_2 (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16817#11): ... 64 Emacs 0x00000001002067b2 Ffuncall + 1762 (eval.c:2827) 65 Emacs 0x00000001002070e9 call1 + 73 (eval.c:2572) 66 Emacs 0x000000010013d6a6 timer_check_2 + 1846 (keyboard.c:4447) ;; Nested call 67 Emacs 0x000000010013cef5 timer_check + 165 (keyboard.c:4514) 68 Emacs 0x0000000100139c25 readable_events + 37 (keyboard.c:3405) 69 Emacs 0x000000010013cdb6 get_input_pending + 54 (keyboard.c:6794) 70 Emacs 0x0000000100142ce4 Finput_pending_p + 132 (keyboard.c:10449) 71 Emacs 0x000000010020652d Ffuncall + 1117 (eval.c:2775) 72 Emacs 0x000000010027173a exec_byte_code + 3866 (bytecode.c:900) 73 Emacs 0x0000000100207b6e funcall_lambda + 1566 (eval.c:3010) 74 Emacs 0x00000001002067b2 Ffuncall + 1762 (eval.c:2827) 75 Emacs 0x000000010027173a exec_byte_code + 3866 (bytecode.c:900) 76 Emacs 0x0000000100207b6e funcall_lambda + 1566 (eval.c:3010) 77 Emacs 0x00000001002067b2 Ffuncall + 1762 (eval.c:2827) 78 Emacs 0x0000000100205b33 Fapply + 243 (eval.c:2255) 79 Emacs 0x0000000100206403 Ffuncall + 819 (eval.c:2759) 80 Emacs 0x000000010027173a exec_byte_code + 3866 (bytecode.c:900) 81 Emacs 0x000000010027080f Fbyte_code + 63 (bytecode.c:475) 82 Emacs 0x0000000100200e79 eval_sub + 2073 (eval.c:2149) 83 Emacs 0x0000000100203d84 internal_lisp_condition_case + 772 (eval.c:1243) 84 Emacs 0x0000000100272957 exec_byte_code + 8503 (bytecode.c:1096) 85 Emacs 0x0000000100207b6e funcall_lambda + 1566 (eval.c:3010) 86 Emacs 0x00000001002067b2 Ffuncall + 1762 (eval.c:2827) 87 Emacs 0x00000001002070e9 call1 + 73 (eval.c:2572) 88 Emacs 0x000000010013d6a6 timer_check_2 + 1846 (keyboard.c:4447) ;; First call 89 Emacs 0x000000010013cef5 timer_check + 165 (keyboard.c:4514) 90 Emacs 0x0000000100139c25 readable_events + 37 (keyboard.c:3405) 91 Emacs 0x000000010013cdb6 get_input_pending + 54 (keyboard.c:6794) 92 Emacs 0x00000001001382e6 detect_input_pending_run_timers + 54 (keyboard.c:10391) 93 Emacs 0x0000000100280963 wait_reading_process_output + 4227 (process.c:4762) 94 Emacs 0x00000001000087fa sit_for + 634 (dispnew.c:5981) ... (I just wonder whether this behaviour is acceptable). Dmitry