Bug#810969: libmutter0g: xclip sometimes causes gnome-shell --wayland to become unresponsive

Thibaut Girka thib at sitedethib.com
Thu Jan 14 10:52:41 UTC 2016


Package: libmutter0g
Version: 3.18.2-1
Severity: important

While I cannot reproduce this reliably, calls to “xclip” (that I use
through the “pass” package) sometimes cause the gnome-shell Wayland
compositor to become unresponsive and take 100% of one CPU core. Xwayland had
a relatively high CPU usage during this time, but nothing close to gnome-shell:
around 10%~20% of one core.
This is especially bad as it stalls any interaction with the compositor,
including VT switching, and I found no way of recovering except by killing the
gnome-shell compositor and thus losing all of its clients.
In addition, after some time, it fills gigabytes of various log files with
messages like:

Jan 12 13:23:22 faye gnome-session[1707]: (gnome-shell:1715): mutter-WARNING **: Error transfering wayland clipboard to X11: L'opération a été annulée

While it might not be entirely representative of how gnome-shell codes executes
in this condition, I managed to use gdb to get the following backtrace,
confirming once again that the issue lies within the XWayland clipboard
handling:

0x00007fa67d97d08d in writev () at ../sysdeps/unix/syscall-template.S:81
#0  0x00007fa67d97d08d in writev () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fa67699952b in _xcb_conn_wait (count=0x7fff44bf2a64, vector=0x7fff44bf2a68, c=0x12d5700) at ../../src/xcb_conn.c:248
#2  0x00007fa67699952b in _xcb_conn_wait (c=c at entry=0x12d5700, cond=cond at entry=0x12d6820, vector=vector at entry=0x7fff44bf2a68, count=count at entry=0x7fff44bf2a64) at ../../src/xcb_conn.c:490
#3  0x00007fa6769998d1 in _xcb_out_send (c=c at entry=0x12d5700, vector=vector at entry=0x7fff44bf2ae0, count=count at entry=3) at ../../src/xcb_out.c:367
#4  0x00007fa676999955 in xcb_writev (c=c at entry=0x12d5700, vector=vector at entry=0x7fff44bf2ae0, count=count at entry=3, requests=requests at entry=4) at ../../src/xcb_out.c:315
#5  0x00007fa67adfad6e in _XSend (dpy=dpy at entry=0x12d44b0, data=data at entry=0x0, size=size at entry=0) at ../../src/xcb_io.c:495
#6  0x00007fa67adfb0b5 in _XFlush (dpy=0x12d44b0) at ../../src/xcb_io.c:512
#7  0x00007fa67addc65a in XFlush (dpy=0x12d44b0) at ../../src/Flush.c:39
#8  0x00007fa67f8831d2 in meta_xwayland_selection_handle_event (compositor=<optimized out>, request_event=0x7fff44bf2ce0) at wayland/meta-xwayland-selection.c:509
#9  0x00007fa67f8831d2 in meta_xwayland_selection_handle_event (xevent=0x7fff44bf2ce0, compositor=<optimized out>) at wayland/meta-xwayland-selection.c:1144
#10 0x00007fa67f8831d2 in meta_xwayland_selection_handle_event (xevent=xevent at entry=0x7fff44bf2ce0) at wayland/meta-xwayland-selection.c:1470
#11 0x00007fa67f8727f8 in xevent_filter (event=0x7fff44bf2ce0, display=0x1416b50 [MetaDisplay]) at x11/events.c:1684
#12 0x00007fa67f8727f8 in xevent_filter (xevent=0x7fff44bf2ce0, event=<optimized out>, data=0x1416b50) at x11/events.c:1786
#13 0x00007fa67ab428d1 in gdk_event_apply_filters (xevent=xevent at entry=0x7fff44bf2ce0, event=event at entry=0x4d95140, window=window at entry=0x0) at /build/gtk+3.0-SLiI62/gtk+3.0-3.18.6/./gdk/x11/gdkeventsource.c:81
#14 0x00007fa67ab42eaf in _gdk_x11_display_queue_events (xevent=0x7fff44bf2ce0, event_source=0xf59e10) at /build/gtk+3.0-SLiI62/gtk+3.0-3.18.6/./gdk/x11/gdkeventsource.c:195
#15 0x00007fa67ab42eaf in _gdk_x11_display_queue_events (display=0x12e5010 [GdkX11Display]) at /build/gtk+3.0-SLiI62/gtk+3.0-3.18.6/./gdk/x11/gdkeventsource.c:338
#16 0x00007fa67ab14f19 in gdk_display_get_event (display=display at entry=0x12e5010 [GdkX11Display]) at /build/gtk+3.0-SLiI62/gtk+3.0-3.18.6/./gdk/gdkdisplay.c:340
#17 0x00007fa67ab42952 in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>) at /build/gtk+3.0-SLiI62/gtk+3.0-3.18.6/./gdk/x11/gdkeventsource.c:360
#18 0x00007fa67dea6fd7 in g_main_context_dispatch (context=0xf48b00) at /build/glib2.0-2.46.2/./glib/gmain.c:3154
#19 0x00007fa67dea6fd7 in g_main_context_dispatch (context=context at entry=0xf48b00) at /build/glib2.0-2.46.2/./glib/gmain.c:3769
#20 0x00007fa67dea7230 in g_main_context_iterate (context=0xf48b00, block=block at entry=1, dispatch=dispatch at entry=1, self=<optimized out>) at /build/glib2.0-2.46.2/./glib/gmain.c:3840
#21 0x00007fa67dea7552 in g_main_loop_run (loop=0x12c3ce0) at /build/glib2.0-2.46.2/./glib/gmain.c:4034
#22 0x00007fa67f853afc in meta_run () at core/main.c:437
#23 0x00000000004021a7 in main ()

-- System Information:
Debian Release: stretch/sid
  APT prefers testing
  APT policy: (990, 'testing'), (120, 'unstable'), (105, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, armhf

Kernel: Linux 4.3.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages libmutter0g depends on:
ii  gsettings-desktop-schemas  3.18.1-1
ii  libc6                      2.21-6
ii  libcairo2                  1.14.4-1
ii  libcanberra-gtk3-0         0.30-2.1
ii  libcanberra0               0.30-2.1
ii  libclutter-1.0-0           1.24.2-1
ii  libcogl20                  1.22.0-1
ii  libdrm2                    2.4.65-3
ii  libgbm1                    11.0.8-1
ii  libgdk-pixbuf2.0-0         2.32.3-1
ii  libgirepository-1.0-1      1.46.0-3
ii  libglib2.0-0               2.46.2-3
ii  libgnome-desktop-3-12      3.18.2-1
ii  libgtk-3-0                 3.18.6-1
ii  libgudev-1.0-0             230-2
ii  libice6                    2:1.0.9-1+b1
ii  libinput10                 1.1.3-1
ii  libpango-1.0-0             1.38.1-1
ii  libsm6                     2:1.2.2-1+b1
ii  libstartup-notification0   0.12-4
ii  libsystemd0                228-2+b1
ii  libupower-glib3            0.99.3-1+b2
ii  libwayland-client0         1.9.0-1
ii  libwayland-server0         1.9.0-1
ii  libx11-6                   2:1.6.3-1
ii  libx11-xcb1                2:1.6.3-1
ii  libxcb-randr0              1.10-3+b1
ii  libxcb1                    1.10-3+b1
ii  libxcomposite1             1:0.4.4-1
ii  libxcursor1                1:1.1.14-1+b1
ii  libxdamage1                1:1.1.4-2+b1
ii  libxext6                   2:1.3.3-1
ii  libxfixes3                 1:5.0.1-2+b2
ii  libxi6                     2:1.7.5-1
ii  libxinerama1               2:1.1.3-1+b1
ii  libxkbcommon-x11-0         0.5.0-1
ii  libxkbcommon0              0.5.0-1
ii  libxkbfile1                1:1.0.9-2
ii  libxrandr2                 2:1.5.0-1
ii  libxrender1                1:0.9.9-2
ii  mutter-common              3.18.2-1

libmutter0g recommends no packages.

libmutter0g suggests no packages.

-- no debconf information
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-gnome-maintainers/attachments/20160114/b068d36d/attachment.sig>


More information about the pkg-gnome-maintainers mailing list