Crash after Xwayland was killed
Affected version
- Fedora 34
- mutter 40.1-1.fc34
- Wayland
Bug summary
After Xwayland was killed, trying to start an app from gnome-shell's Overview resulted in a crash.
Steps to reproduce
- Run an X11 application (to make sure Xwayland is started)
- Kill Xwayland
- Open gnome-shell's Overview and start typing an application name
What happened
gnome-shell crashed:
#0 g_list_prepend (list=0x55b45510c7f0 = {...}, data=data@entry=0x55b455b14f80) at ../glib/glist.c:343
#1 0x00007f2163cb2313 in meta_x11_selection_input_stream_new_async
(x11_display=0x55b45903a000, window=0, selection=0x55b458f37f40 "_NET_RESTACK_WINDOW",
target=0x7f2163d4c167 "UTF8_STRING", timestamp=64552, io_priority=0, cancellable=0x0,
callback=0x7f2163ca6c40 <stream_new_cb>, user_data=0x55b4557dc630)
at ../src/x11/meta-x11-selection-input-stream.c:523
#2 0x00007f2163cab1b6 in meta_selection_source_x11_read_async (source=<optimized out>,
mimetype=0x7f2163d4c167 "UTF8_STRING", cancellable=0x0, callback=<optimized out>, user_data=0x55b454693190)
at ../src/x11/meta-selection-source-x11.c:94
#3 0x00007f2163cac7be in meta_x11_selection_handle_selection_request (xevent=0x7fffdbd1ac00, x11_display=0x55b4559bdc00)
at ../src/x11/meta-x11-selection.c:291
#4 meta_x11_selection_handle_event (xevent=0x7fffdbd1ac00, x11_display=0x55b4559bdc00)
at ../src/x11/meta-x11-selection.c:445
#5 process_selection_event (event=0x7fffdbd1ac00, x11_display=0x55b4559bdc00) at ../src/x11/events.c:1736
#6 meta_x11_display_handle_xevent (event=<optimized out>, x11_display=<optimized out>) at ../src/x11/events.c:1803
#7 xevent_filter (xevent=0x7fffdbd1ac00, event=<optimized out>, data=0x55b4559bdc00) at ../src/x11/events.c:1916
#8 0x00007f21638afa8f in gdk_event_apply_filters (xevent=xevent@entry=0x7fffdbd1ac00, event=event@entry=0x55b45915e720,
window=window@entry=0x0) at x11/gdkeventsource.c:79
#9 0x00007f21638b8997 in gdk_event_source_translate_event (xevent=0x7fffdbd1ac00, event_source=0x55b4554e49e0)
at x11/gdkeventsource.c:198
#10 _gdk_x11_display_queue_events (display=0x55b4591f72a0) at x11/gdkeventsource.c:341
#11 0x00007f216387eb1b in gdk_display_get_event (display=0x55b4591f72a0)
at /usr/src/debug/gtk3-3.24.29-1.fc34.x86_64/gdk/gdkdisplay.c:442
#12 0x00007f21638b8c06 in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>,
user_data=<optimized out>) at x11/gdkeventsource.c:363
#13 0x00007f21648794cf in g_main_dispatch (context=0x55b4530f2a00) at ../glib/gmain.c:3337
#14 g_main_context_dispatch (context=0x55b4530f2a00) at ../glib/gmain.c:4055
#15 0x00007f21648cd4e8 in g_main_context_iterate.constprop.0 (context=0x55b4530f2a00, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4131
#16 0x00007f2164878a93 in g_main_loop_run (loop=0x55b45346a140) at ../glib/gmain.c:4329
#17 0x00007f2163c7cfe0 in meta_run_main_loop () at ../src/core/main.c:928
#18 0x00007f2163c84e92 in meta_run () at ../src/core/main.c:943
#19 0x000055b45306bca6 in main (argc=<optimized out>, argv=<optimized out>) at ../src/main.c:504
What did you expect to happen
No crash.
Relevant logs, screenshots, screencasts etc.
This snippet from journalctl
might be interesting:
May 17 17:26:29 akaboushi gnome-shell[3295]: Connection to xwayland lost
May 17 17:26:29 akaboushi gnome-shell[3295]: Xwayland just died, attempting to recover
May 17 17:26:29 akaboushi gnome-shell[3295]: Using public X11 display :0, (using :1 for managed services)
May 17 17:26:33 akaboushi gnome-shell[3295]: Source ID 24399 was not found when attempting to remove it
May 17 17:27:03 akaboushi audit[3295]: ANOM_ABEND auid=1000 uid=1000 gid=1000 ses=3 subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 pid=3295 comm="gnome-shell" exe="/usr/bin/gnome-shell" sig=11 res=1