From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Joseph Mingrone Newsgroups: gmane.emacs.bugs Subject: bug#22214: 25.0.50; lock up with gui dialogs and clipmon-mode Date: Mon, 21 Dec 2015 15:42:57 -0400 Message-ID: <86a8p3fv0e.fsf@phe.ftfl.ca> References: <86y4cpk53i.fsf@phe.ftfl.ca> <83oadlt8sp.fsf@gnu.org> <86vb7sfs7n.fsf@phe.ftfl.ca> <83si2vsu2s.fsf@gnu.org> <86k2o7g3ec.fsf@phe.ftfl.ca> <8337uvsnb0.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" X-Trace: ger.gmane.org 1450727066 20182 80.91.229.3 (21 Dec 2015 19:44:26 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 21 Dec 2015 19:44:26 +0000 (UTC) Cc: 22214@debbugs.gnu.org, bburns.km@gmail.com To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Dec 21 20:44:15 2015 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 1aB6NR-0006ZS-Uw for geb-bug-gnu-emacs@m.gmane.org; Mon, 21 Dec 2015 20:44:14 +0100 Original-Received: from localhost ([::1]:47033 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aB6NR-0000GJ-6h for geb-bug-gnu-emacs@m.gmane.org; Mon, 21 Dec 2015 14:44:13 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:38171) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aB6NL-0000G0-Rb for bug-gnu-emacs@gnu.org; Mon, 21 Dec 2015 14:44:09 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aB6NG-0004vD-Lc for bug-gnu-emacs@gnu.org; Mon, 21 Dec 2015 14:44:07 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:51508) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aB6NG-0004v9-IV for bug-gnu-emacs@gnu.org; Mon, 21 Dec 2015 14:44:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84) (envelope-from ) id 1aB6NG-0007Dp-Ar for bug-gnu-emacs@gnu.org; Mon, 21 Dec 2015 14:44:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Joseph Mingrone Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Dec 2015 19:44:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22214 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 22214-submit@debbugs.gnu.org id=B22214.145072699027691 (code B ref 22214); Mon, 21 Dec 2015 19:44:02 +0000 Original-Received: (at 22214) by debbugs.gnu.org; 21 Dec 2015 19:43:10 +0000 Original-Received: from localhost ([127.0.0.1]:59110 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aB6MP-0007CZ-L4 for submit@debbugs.gnu.org; Mon, 21 Dec 2015 14:43:10 -0500 Original-Received: from mail-qk0-f179.google.com ([209.85.220.179]:33003) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aB6MN-0007CJ-Qc for 22214@debbugs.gnu.org; Mon, 21 Dec 2015 14:43:08 -0500 Original-Received: by mail-qk0-f179.google.com with SMTP id k189so141563544qkc.0 for <22214@debbugs.gnu.org>; Mon, 21 Dec 2015 11:43:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ftfl.ca; s=google; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-type; bh=zXeG79HKI9p+pmfI08PmgbpYJcv3KHmnCFwIyVsdf5U=; b=SfwXIwJLWICI2YyGDJQJFz2XRzoU8VCLuuVo1JpcQJa7gMkTP9YTNLJyWELUelZ3JO amlVcagES7MC6rm6ZzIZJLdmDJN7WpxX3wz+yCKEL+BEJqU0hW8imkm6dDqEMUixPXIw jR38S+GTqH4Jq8/l/di5irtBrC15wmA4TgtCM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-type; bh=zXeG79HKI9p+pmfI08PmgbpYJcv3KHmnCFwIyVsdf5U=; b=YYuMbzGD6MfCg/UVayTq+dFihKqOALk5TL2jAGbouo7L6CGn7JNO2TqvG/9QWuuzth NMkmutf44l/N5t6zmYpkACmav3fwTRBVZoHw+4O6/XXOQN399Ic+xd68CwiQE/frB7XU ZM7tl6dHSF2ohVVhRodTABmHAQnuiu+lk0OHaFE8EeeUQp3s+oodr2TNA0uPbGOGB08j nbiiVPVqo+Bh9EKFzmtp1RPiGx8j7bzPzBCRCbVjivSuuG2aAsh3eHr240bkDaVH9lVz Tr+UUsCaW0w778LqebreS3ynsbi1W42+r88JFIjuy2Yv7XmzPWlCCQBpjliZiaCfKi0A UNvg== X-Gm-Message-State: ALoCoQnKAaL8SS6ByIbzmfG0XT/pBKokdFQqmMCNsNFhFauQxxP4phiEqgPNcgzSWMdSN4s6nDcI40hjBo/c9GBuVigbsZPVwQ== X-Received: by 10.55.75.136 with SMTP id y130mr27248218qka.96.1450726982257; Mon, 21 Dec 2015 11:43:02 -0800 (PST) Original-Received: from phe.ftfl.ca.ftfl.ca (JMingrone.MathStat.Dal.Ca. [129.173.118.13]) by smtp.gmail.com with ESMTPSA id v202sm14723658qka.38.2015.12.21.11.42.58 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 21 Dec 2015 11:43:00 -0800 (PST) In-Reply-To: <8337uvsnb0.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 21 Dec 2015 19:50:59 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (berkeley-unix) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.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:110254 Archived-At: --=-=-= Content-Type: text/plain Eli Zaretskii writes: >> From: Joseph Mingrone >> Cc: 22214@debbugs.gnu.org, bburns.km@gmail.com >> Date: Mon, 21 Dec 2015 12:41:47 -0400 >> Thread 3 (Thread 1902400 (LWP 100743)): >> #0 0x0000000807444cfa in _sigprocmask () from /lib/libc.so.7 >> #1 0x0000000804656526 in pthread_sigmask () from /lib/libthr.so.3 >> #2 0x00000000007ab8e9 in block_atimers (oldset=0x7fffffff7970) at atimer.c:70 >> #3 0x00000000007abffc in do_pending_atimers () at atimer.c:434 >> #4 0x00000000005f803e in process_pending_signals () at keyboard.c:7043 >> #5 0x00000000006c1559 in Fmake_list (length=0, init=0) at alloc.c:2718 >> #6 0x0000000000713c2a in concat (nargs=1, args=0x7fffffff7b28, target_type=Lisp_Cons, last_special=false) at fns.c:633 >> #7 0x00000000007135d2 in Fcopy_sequence (arg=18186131) at fns.c:501 >> #8 0x00000000005f25b3 in timer_check () at keyboard.c:4452 > Thanks. > Can you find out which thread uses up the CPU? If that's this thread > (the Emacs application main thread), can you use the technique > described in etc/DEBUG under "If the symptom of the bug is that Emacs > fails to respond" to find out whether Emacs is looping and where? It looks like it's looping in process.c starting at line 4565 while (1) { bool process_skipped = false; ... The gdb output below shows the steps through the looping. Joseph jrm@phe ~/scm/nm/emacs.git/src % /usr/local/bin/gdb ./emacs GNU gdb (GDB) 7.10 [GDB v7.10 for FreeBSD] Copyright (C) 2015 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-portbld-freebsd10.1". Type "show configuration" for configuration details. For bug reporting instructions, please see: . Find the GDB manual and other documentation resources online at: . For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from ./emacs...done. SIGINT is used by the debugger. Are you sure you want to change it? (y or n) [answered Y; input not from terminal] DISPLAY = :0.0 TERM = screen-256color Breakpoint 1 at 0x5dfb54: file emacs.c, line 371. Temporary breakpoint 2 at 0x61e9d9: file sysdep.c, line 905. (gdb) run -Q Starting program: /usr/home/jrm/scm/nm/emacs.git/src/emacs -Q [New Thread 1902400 (LWP 101016)] ^Z[New Thread 16b5c00 (LWP 100130)] Program received signal SIGTSTP, Stopped (user). [Switching to Thread 1902400 (LWP 101016)] 0x000000080736efaa in ktimer_settime () from /lib/libc.so.7 (gdb) finish Run till exit from #0 0x000000080736efaa in ktimer_settime () from /lib/libc.so.7 0x00000000007abd8b in set_alarm () at atimer.c:312 312 && timer_settime (alarm_timer, TIMER_ABSTIME, &ispec, 0) == 0) (gdb) finish Run till exit from #0 0x00000000007abd8b in set_alarm () at atimer.c:312 run_timers () at atimer.c:382 382 } (gdb) finish Run till exit from #0 run_timers () at atimer.c:382 do_pending_atimers () at atimer.c:436 436 unblock_atimers (&oldset); (gdb) finish Run till exit from #0 do_pending_atimers () at atimer.c:436 process_pending_signals () at keyboard.c:7044 7044 } (gdb) finish Run till exit from #0 process_pending_signals () at keyboard.c:7044 Fmake_list (length=0, init=0) at alloc.c:2689 2689 while (size > 0) (gdb) finish Run till exit from #0 Fmake_list (length=0, init=0) at alloc.c:2689 0x0000000000713c2a in concat (nargs=1, args=0x7fffffff7ad8, target_type=Lisp_Cons, last_special=false) at fns.c:633 633 val = Fmake_list (make_number (result_len), Qnil); Value returned is $1 = 105189203 (gdb) finish Run till exit from #0 0x0000000000713c2a in concat (nargs=1, args=0x7fffffff7ad8, target_type=Lisp_Cons, last_special=false) at fns.c:633 Fcopy_sequence (arg=21640739) at fns.c:502 502 } Value returned is $2 = 105189203 (gdb) finish Run till exit from #0 Fcopy_sequence (arg=21640739) at fns.c:502 0x00000000005f25b3 in timer_check () at keyboard.c:4452 4452 timers = Fcopy_sequence (Vtimer_list); Value returned is $3 = 105189203 (gdb) finish Run till exit from #0 0x00000000005f25b3 in timer_check () at keyboard.c:4452 readable_events (flags=1) at keyboard.c:3313 3313 if (kbd_fetch_ptr != kbd_store_ptr) Value returned is $4 = {tv_sec = 0, tv_nsec = -1} (gdb) finish Run till exit from #0 readable_events (flags=1) at keyboard.c:3313 0x00000000005f7963 in get_input_pending (flags=1) at keyboard.c:6691 6691 input_pending = (!NILP (Vquit_flag) || readable_events (flags)); Value returned is $5 = true (gdb) finish Run till exit from #0 0x00000000005f7963 in get_input_pending (flags=1) at keyboard.c:6691 swallow_events (do_display=false) at keyboard.c:4205 4205 if (!input_pending && timers_run != old_timers_run && do_display) Value returned is $6 = true (gdb) finish Run till exit from #0 swallow_events (do_display=false) at keyboard.c:4205 wait_reading_process_output (time_limit=5, nsecs=0, read_kbd=0, do_display=false, wait_for_cell=17528851, wait_proc=0x0, just_wait_proc=0) at process.c:5004 5004 if (! NILP (wait_for_cell) && ! NILP (XCAR (wait_for_cell))) (gdb) finish Run till exit from #0 wait_reading_process_output (time_limit=5, nsecs=0, read_kbd=0, do_display=false, wait_for_cell=17528851, wait_proc=0x0, just_wait_proc=0) at process.c:5004 ^Z Program received signal SIGTSTP, Stopped (user). 0x000000080736efaa in ktimer_settime () from /lib/libc.so.7 (gdb) finish Run till exit from #0 0x000000080736efaa in ktimer_settime () from /lib/libc.so.7 0x00000000007abd8b in set_alarm () at atimer.c:312 312 && timer_settime (alarm_timer, TIMER_ABSTIME, &ispec, 0) == 0) (gdb) finish Run till exit from #0 0x00000000007abd8b in set_alarm () at atimer.c:312 run_timers () at atimer.c:382 382 } (gdb) finish Run till exit from #0 run_timers () at atimer.c:382 do_pending_atimers () at atimer.c:436 436 unblock_atimers (&oldset); (gdb) finish Run till exit from #0 do_pending_atimers () at atimer.c:436 process_pending_signals () at keyboard.c:7044 7044 } (gdb) finish Run till exit from #0 process_pending_signals () at keyboard.c:7044 0x0000000000788a69 in wait_reading_process_output (time_limit=5, nsecs=0, read_kbd=0, do_display=false, wait_for_cell=17528851, wait_proc=0x0, just_wait_proc=0) at process.c:4573 4573 QUIT; (gdb) finish Run till exit from #0 0x0000000000788a69 in wait_reading_process_output (time_limit=5, nsecs=0, read_kbd=0, do_display=false, wait_for_cell=17528851, wait_proc=0x0, just_wait_proc=0) at process.c:4573 ^Z Program received signal SIGTSTP, Stopped (user). 0x0000000807444cfa in _sigprocmask () from /lib/libc.so.7 (gdb) finish Run till exit from #0 0x0000000807444cfa in _sigprocmask () from /lib/libc.so.7 0x0000000804656526 in pthread_sigmask () from /lib/libthr.so.3 (gdb) finish Run till exit from #0 0x0000000804656526 in pthread_sigmask () from /lib/libthr.so.3 unblock_atimers (oldset=0x7fffffff7920) at atimer.c:76 76 } (gdb) finish Run till exit from #0 unblock_atimers (oldset=0x7fffffff7920) at atimer.c:76 do_pending_atimers () at atimer.c:438 438 } (gdb) finish Run till exit from #0 do_pending_atimers () at atimer.c:438 process_pending_signals () at keyboard.c:7044 7044 } (gdb) finish Run till exit from #0 process_pending_signals () at keyboard.c:7044 Fmake_list (length=0, init=0) at alloc.c:2689 2689 while (size > 0) (gdb) finish Run till exit from #0 Fmake_list (length=0, init=0) at alloc.c:2689 0x0000000000713c2a in concat (nargs=1, args=0x7fffffff7ad8, target_type=Lisp_Cons, last_special=false) at fns.c:633 633 val = Fmake_list (make_number (result_len), Qnil); Value returned is $7 = 757173027 (gdb) finish Run till exit from #0 0x0000000000713c2a in concat (nargs=1, args=0x7fffffff7ad8, target_type=Lisp_Cons, last_special=false) at fns.c:633 Fcopy_sequence (arg=21640739) at fns.c:502 502 } Value returned is $8 = 757173027 (gdb) finish Run till exit from #0 Fcopy_sequence (arg=21640739) at fns.c:502 0x00000000005f25b3 in timer_check () at keyboard.c:4452 4452 timers = Fcopy_sequence (Vtimer_list); Value returned is $9 = 757173027 (gdb) finish Run till exit from #0 0x00000000005f25b3 in timer_check () at keyboard.c:4452 readable_events (flags=1) at keyboard.c:3313 3313 if (kbd_fetch_ptr != kbd_store_ptr) Value returned is $10 = {tv_sec = 0, tv_nsec = -1} (gdb) finish Run till exit from #0 readable_events (flags=1) at keyboard.c:3313 0x00000000005f7963 in get_input_pending (flags=1) at keyboard.c:6691 6691 input_pending = (!NILP (Vquit_flag) || readable_events (flags)); Value returned is $11 = true (gdb) finish Run till exit from #0 0x00000000005f7963 in get_input_pending (flags=1) at keyboard.c:6691 swallow_events (do_display=false) at keyboard.c:4205 4205 if (!input_pending && timers_run != old_timers_run && do_display) Value returned is $12 = true (gdb) finish Run till exit from #0 swallow_events (do_display=false) at keyboard.c:4205 wait_reading_process_output (time_limit=5, nsecs=0, read_kbd=0, do_display=false, wait_for_cell=17528851, wait_proc=0x0, just_wait_proc=0) at process.c:5004 5004 if (! NILP (wait_for_cell) && ! NILP (XCAR (wait_for_cell))) (gdb) next 5013 if (read_kbd && interrupt_input (gdb) next 5020 if (read_kbd || ! NILP (wait_for_cell)) (gdb) next 5021 do_pending_window_change (0); (gdb) next 5024 if (no_avail || nfds == 0) (gdb) next 5025 continue; (gdb) next 5215 } /* End while exit conditions not met. */ (gdb) next 4567 bool process_skipped = false; (gdb) next 4572 if (read_kbd >= 0) (gdb) next 4573 QUIT; (gdb) next 4578 if (! NILP (wait_for_cell) && ! NILP (XCAR (wait_for_cell))) (gdb) next 4583 if (wait == TIMEOUT) (gdb) next 4585 if (!timespec_valid_p (now)) (gdb) next 4587 if (timespec_cmp (end_time, now) <= 0) (gdb) next 4589 timeout = timespec_sub (end_time, now); (gdb) next 4598 if (NILP (wait_for_cell) (gdb) next 4642 if (read_kbd < 0) (gdb) next 4649 if (update_tick != process_tick) (gdb) next 4681 if (wait_proc && wait_proc->raw_status_new) (gdb) next 4683 if (wait_proc (gdb) next 4727 if (wait_proc && just_wait_proc) (gdb) next 4735 else if (!NILP (wait_for_cell)) (gdb) next 4737 Available = non_process_wait_mask; (gdb) next 4738 check_delay = 0; (gdb) next 4739 check_write = 0; (gdb) next 4757 if (frame_garbaged && do_display) (gdb) next 4769 no_avail = 0; (gdb) next 4770 if ((read_kbd || !NILP (wait_for_cell)) (gdb) next 4771 && detect_input_pending ()) (gdb) next 4773 nfds = read_kbd ? 0 : 1; (gdb) next 4774 no_avail = 1; (gdb) next 4775 FD_ZERO (&Available); (gdb) next 4910 xerrno = errno; (gdb) next 4913 clear_waiting_for_input (); (gdb) next 4916 do_pending_window_change (0); (gdb) next 4918 if (nfds == 0) (gdb) next 4942 if (nfds < 0) (gdb) next 4956 if (read_kbd != 0) (gdb) next 4983 if (read_kbd != 0 (gdb) next 4994 if (read_kbd == 0 && detect_input_pending ()) (gdb) next 4996 swallow_events (do_display); (gdb) next 5004 if (! NILP (wait_for_cell) && ! NILP (XCAR (wait_for_cell))) (gdb) next 5013 if (read_kbd && interrupt_input (gdb) next 5020 if (read_kbd || ! NILP (wait_for_cell)) (gdb) next 5021 do_pending_window_change (0); (gdb) next 5024 if (no_avail || nfds == 0) (gdb) next 5025 continue; (gdb) next 5215 } /* End while exit conditions not met. */ (gdb) --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJWeFZBAAoJEDakDIOw1u+eTZoQAISB0I5ZmGV7kVmOlEDL1EyP jDemUmN2ooBfqTZsNi/cnxRD7cLyuXpVAxicnYuBKzSiKYK6h4R/BY2mcyHcB2eD rQXy8kHVzMBNvIuENtTqf1qxFhPc7ZqGzxBrXSYo9MJyktOxx7Dsp7OJYnqNUYoc rtOXnUoP5lgjwXc5Lh6RAr5JXnZBO841lNZ/N6BvSydJC62c2cT0vxDihaaIfgmq ZpTqdyGdT3eKA5huB4dIAVnhdMxQcEoWcG25qNA0qWuRhHu8jRzPEKbwuTqECYrX PXoflegyWTQmu4am9nqWDTxBUFrn0LRLUJ9A1BCk4to4q5aHFJ17fy52/FvlYd6N LgYadmAx/li+kmT4J6fxVzyBJj6BTuN77Y/kdQc5JH7gx86HzUDVTH6bU3lNY5m2 FidJxw6TbxbT17hXjabaoeLRBWhhFkzZBHwKmnQ5At6bq3T4ZlpHrpsKn5aKpL5R PlQywIgd+FUk8gTBWbzcopYevrhf9v474wPTIqjjNyRwKiP6v9OW4K4lsnCq+XSh bgcWFisCcqUJ3RV0FALS+OB0k8AbkCrT50+mI/9uCDjBbKTnfcziZQjTMJmuQA/f xP0L8OD1gCKZXhfapFlmZVRY3vNElfrngADvwx1rpgM1JMAYz1C9W+lvPrEjTQb0 vrhcXteG0g7rZuX39TVm =IBGQ -----END PGP SIGNATURE----- --=-=-=--