Subject: bug#40734: 26.3; emacs becomes unresponsive after quitting ediff

From: Christian Brechbühler <[email-masked]>
Date: Mon, 20 Apr 2020 11:39:33 -0400

Started Emacs from Ubuntu Applications, the icon with the white
   calligraphic "E" in a purple circle.
   I had two buffers open ("Alerts" and "config" from smokeping).
   M-x ediff-buffers
   n n n  (to advance to difference #3)
   b      (copy content of buffer B into A)
   q y    (quit ediff, confirm)

After this, emacs is unresponsive.  This behavior is similar to
bug#20175 and bug#21796, which are years old and
merged/archived/wontfix.  The difference is that they only lost keyboard
focus; for me mouse input doesn't work either.
The cursor stays hollow, which normally indicates that Emacs doesn't
have the focus.  (The window decoration at the top brightens, indicating
that the frame has the focus, as far as the window manager is
concerned.)
Sending SIGUSR2 to the process (16044) has no effect.

It didn't crash, but I attached gdb to get 'bt' as follows.
Unfortunately I exited before obtainining 'xbacktrace'.

$ gdb /proc/16044/exe
GNU gdb (Ubuntu 8.1-0ubuntu3.2) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html
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-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /proc/16044/exe...(no debugging symbols found)...done.
(gdb) attach 16044
Attaching to program: /proc/16044/exe, process 16044
[New LWP 16070]
[New LWP 16071]
[New LWP 16072]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
__lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
135     ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: No such file or
directory.
(gdb) thread apply all bt

Thread 4 (Thread 0x7fc6acdcb700 (LWP 16072)):
#0  0x00007fc6ba6c7bf9 in poll () from
/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6
#1  0x00007fc6bf90a5c9 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fc6bf90a6dc in g_main_context_iteration ()
   from /snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fc6acdd336d in ?? () from
/usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
#4  0x00007fc6bf932195 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fc6bb2ab6db in start_thread (arg=0x7fc6acdcb700) at
pthread_create.c:463
#6  0x00007fc6ba6d488f in clone () from
/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6

Thread 3 (Thread 0x7fc6ae649700 (LWP 16071)):
#0  0x00007fc6ba6c7bf9 in poll () from
/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6
#1  0x00007fc6bf90a5c9 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fc6bf90a962 in g_main_loop_run () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fc6bff0a0e6 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007fc6bf932195 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fc6bb2ab6db in start_thread (arg=0x7fc6ae649700) at
pthread_create.c:463
#6  0x00007fc6ba6d488f in clone () from
/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6

Thread 2 (Thread 0x7fc6af2bb700 (LWP 16070)):
#0  0x00007fc6ba6c7bf9 in poll () from
/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6
#1  0x00007fc6bf90a5c9 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fc6bf90a6dc in g_main_context_iteration ()
   from /snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fc6bf90a721 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fc6bf932195 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fc6bb2ab6db in start_thread (arg=0x7fc6af2bb700) at
pthread_create.c:463
#6  0x00007fc6ba6d488f in clone () from
/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6

Thread 1 (Thread 0x7fc6c22f7b00 (LWP 16044)):
#0  __lll_lock_wait () at
../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
#1  0x00007fc6bb2ae023 in __GI___pthread_mutex_lock (mutex=0x49f6338) at
../nptl/pthread_mutex_lock.c:78
#2  0x00007fc6bed352d6 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007fc6bf194db9 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libX11.so.6
#4  0x00007fc6bf194f1e in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libX11.so.6
#5  0x00007fc6bf19520d in _XEventsQueued () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libX11.so.6
#6  0x00007fc6bf186d3d in XPending () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libX11.so.6
#7  0x00007fc6c09f409e in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libgdk-3.so.0
#8  0x00007fc6bf909b28 in g_main_context_prepare ()
   from /snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#9  0x00007fc6bf90a4fb in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x00007fc6bf90a687 in g_main_context_pending ()
   from /snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007fc6c0ebda9d in gtk_events_pending () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libgtk-3.so.0
#12 0x000000000052e0e1 in XTread_socket ()
#13 0x0000000000578cc3 in gobble_input ()
#14 0x00000000005791ff in handle_async_input ()
#15 0x000000000057921e in process_pending_signals ()
#16 0x0000000000616264 in maybe_quit ()
#17 0x00000000005e9c6f in re_match_2_internal ()
#18 0x00000000005e2e2b in re_search_2 ()
#19 0x00000000005e240b in re_search ()
#20 0x00000000005cdb4c in fast_string_match_internal ()
#21 0x000000000056572d in fast_string_match ()
#22 0x00000000005b1f69 in Ffind_file_name_handler ()
#23 0x00000000005b2c8c in Fexpand_file_name ()
#24 0x00000000005be759 in Fdo_auto_save ()
#25 0x000000000056a5a3 in shut_down_emacs ()
#26 0x0000000000567caf in terminate_due_to_signal ()
#27 0x000000000058e802 in handle_fatal_signal ()
#28 0x000000000058e7d3 in deliver_thread_signal ()
#29 0x000000000058e83d in deliver_fatal_thread_signal ()
#30 0x000000000058e9f9 in handle_sigsegv ()
#31 <signal handler called>
#32 0x00007fc6ba6473c1 in ?? () from
/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6
#33 0x00007fc6ba64a2ed in malloc () from
/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6
#34 0x00007fc6bed34e4e in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libxcb.so.1
#35 0x00007fc6bed32a08 in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libxcb.so.1
#36 0x00007fc6bed3406f in ?? () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libxcb.so.1
#37 0x00007fc6bed341ef in xcb_wait_for_reply64 () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libxcb.so.1
#38 0x00007fc6bf1956e8 in _XReply () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libX11.so.6
#39 0x00007fc6bf18b8ce in XQueryPointer () from
/snap/emacs/296/usr/bin/../lib/x86_64-linux-gnu/libX11.so.6
#40 0x0000000000527c38 in XTmouse_position ()
#41 0x000000000042cd39 in Fmouse_position ()
#42 0x00000000006198e3 in funcall_subr ()
#43 0x00000000006194e5 in Ffuncall ()
#44 0x0000000000664a8f in exec_byte_code ()
#45 0x0000000000619fa0 in funcall_lambda ()
#46 0x0000000000619529 in Ffuncall ()
#47 0x0000000000664a8f in exec_byte_code ()
#48 0x0000000000619fa0 in funcall_lambda ()
#49 0x0000000000619529 in Ffuncall ()
#50 0x0000000000664a8f in exec_byte_code ()
#51 0x0000000000619fa0 in funcall_lambda ()
#52 0x0000000000619529 in Ffuncall ()
#53 0x00000000006110f6 in Ffuncall_interactively ()
#54 0x0000000000619809 in funcall_subr ()
#55 0x00000000006194e5 in Ffuncall ()
#56 0x00000000006136cb in Fcall_interactively ()
#57 0x000000000061995b in funcall_subr ()
#58 0x00000000006194e5 in Ffuncall ()
#59 0x0000000000664a8f in exec_byte_code ()
#60 0x0000000000619fa0 in funcall_lambda ()
#61 0x0000000000619529 in Ffuncall ()
#62 0x0000000000618df5 in call1 ()
#63 0x000000000056d377 in command_loop_1 ()
#64 0x0000000000615e1a in internal_condition_case ()
#65 0x000000000056c868 in command_loop_2 ()
#66 0x00000000006156d3 in internal_catch ()
#67 0x000000000056c806 in command_loop ()
#68 0x000000000056beec in recursive_edit_1 ()
#69 0x000000000056c06a in Frecursive_edit ()
#70 0x0000000000569b42 in main ()
(gdb)

To me it looks like thread 1 was handling a segmentation fault.  This is
different from the older bugs.

In GNU Emacs 26.3 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.30)
Repository revision: ea9cfdb4812c1140416c523bac34a6ec72db7fce
Windowing system distributor 'The X.Org Foundation', version 11.0.12005000
System Description: Ubuntu 18.04.4 LTS

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
<C-S-mouse-1> is undefined

Configured using:
 'configure --prefix= --prefix=/snap/emacs/current/usr 'CFLAGS=
 -I/build/emacs/parts/emacs/install/usr/include' 'CPPFLAGS=
 -I/build/emacs/parts/emacs/install/usr/include' 'LDFLAGS=
 -L/build/emacs/parts/emacs/install/lib
 -L/build/emacs/parts/emacs/install/usr/lib
 -L/build/emacs/parts/emacs/install/lib/x86_64-linux-gnu
 -L/build/emacs/parts/emacs/install/usr/lib/x86_64-linux-gnu''

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS LIBSYSTEMD LCMS2

Important settings:
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Fundamental

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv
bytecomp byte-compile cconv cl-loaddefs cl-lib dired dired-loaddefs
format-spec rfc822 mml easymenu mml-sec password-cache epa derived epg
epg-config gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils elec-pair time-date
mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar
dnd fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode elisp-mode lisp-mode prog-mode register page menu-bar
rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core term/tty-colors frame cl-generic cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european
ethiopic indian cyrillic chinese composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 16 97777 9296)
 (symbols 48 20382 1)
 (miscs 40 93 144)
 (strings 32 28489 1426)
 (string-bytes 1 752098)
 (vectors 16 13921)
 (vector-slots 8 502674 7534)
 (floats 8 49 190)
 (intervals 56 282 0)
 (buffers 992 12))