Subject: libmutter-7-0: gnome-shell segfaults because monitor_mode contains null pointer.

From: Bernhard Übelacker <[email-masked]>
Date: Fri, 5 Mar 2021 16:02:56 +0100

Package: libmutter-7-0
Version: 3.38.3-2
Severity: normal
X-Debbugs-Cc: [email-masked]

Dear Maintainer,
I tried to replicate #982572, therefore
setup a qemu VM with two qxl devices [1].

This is currently running a kernel 5.2 due to #983934.

Inside I have trouble with mouse input,
therefore activated remote access by keyboard.
(Unfortunately can just access one of the
two screens with this method.)

On that screen I did some resolution changes and
window moves, then gnome-shell crashed.
I have not yet tried to reproduce this or cannot
say if this happens because of this special setup.
Found also no other down- or any upstream bug about this.

It seems that we get in [3] a nullpointer for "monitor_mode",
that gets dereferenced later.

In [2] are the last frames of the backtrace, complete
in attached file.

Kind regards,
Bernhard

[3] https://sources.debian.org/src/mutter/3.38.3-3/src/backends/meta-renderer.c/#L228

[2]
     (gdb) bt
     #0  meta_monitor_mode_foreach_crtc (monitor=monitor@entry=0x55c936bd45a0, mode=0x0, func=func@entry=0x7fbadddaf010 <collect_views>, user_data=user_data@entry=0x7fff8032e9e0, error=error@entry=0x0) at ../src/backends/meta-monitor.c:1912
     #1  0x00007fbadddaefe5 in meta_renderer_real_get_views_for_monitor (renderer=<optimized out>, monitor=0x55c936bd45a0) at ../src/backends/meta-renderer.c:228
     #2  0x00007fbadde3190f in is_redraw_queued (monitor_src=0x7fbacc039150) at ../src/backends/meta-screen-cast-monitor-stream-src.c:210
     #3  sync_cursor_state (monitor_src=0x7fbacc039150) at ../src/backends/meta-screen-cast-monitor-stream-src.c:228
     #4  0x00007fbadeab80a2 in g_closure_invoke (closure=0x55c9376dd460, return_value=return_value@entry=0x0, n_param_values=1, param_values=param_values@entry=0x7fff8032ebd0, invocation_hint=invocation_hint@entry=0x7fff8032eb50) at ../../../gobject/gclosure.c:810
     #5  0x00007fbadeaca602 in signal_emit_unlocked_R (node=node@entry=0x55c936648d40, detail=detail@entry=0, instance=instance@entry=0x7fbac0002280, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fff8032ebd0) at ../../../gobject/gsignal.c:3809
     #6  0x00007fbadead06cf in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fff8032ed50) at ../../../gobject/gsignal.c:3495
     #7  0x00007fbadead0c3f in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at ../../../gobject/gsignal.c:3551
     #8  0x00007fbadde4cdba in meta_wayland_pointer_set_focus (pointer=0x55c936be7820, surface=<optimized out>) at ../src/wayland/meta-wayland-pointer.c:973
     #9  0x00007fbadde4d40d in repick_for_event (pointer=0x55c936be7820, for_event=<optimized out>) at ../src/wayland/meta-wayland-pointer.c:640
     ...

[1] -spice port=5930,addr=$LOCALIP,disable-ticketing -device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1 -device qxl,id=video1,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1

-- System Information:
Debian Release: bullseye/sid
   APT prefers testing-debug
   APT policy: (500, 'testing-debug'), (500, 'proposed-updates-debug'), (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 5.2.0-3-amd64 (SMP w/4 CPU threads)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libmutter-7-0 depends on:
ii  adwaita-icon-theme         3.38.0-1
ii  gsettings-desktop-schemas  3.38.0-2
ii  libatk1.0-0                2.36.0-2
ii  libc6                      2.31-9
ii  libcairo-gobject2          1.16.0-5
ii  libcairo2                  1.16.0-5
ii  libcanberra0               0.30-7
ii  libdrm2                    2.4.104-1
ii  libegl1                    1.3.2-1
ii  libfontconfig1             2.13.1-4.2
ii  libfribidi0                1.0.8-2
ii  libgbm1                    20.3.4-1
ii  libgdk-pixbuf-2.0-0        2.42.2+dfsg-1
ii  libgl1                     1.3.2-1
ii  libglib2.0-0               2.66.7-1
ii  libgnome-desktop-3-19      3.38.4-1
ii  libgraphene-1.0-0          1.10.4+dfsg1-1
ii  libgtk-3-0                 3.24.24-1
ii  libgudev-1.0-0             234-1
ii  libice6                    2:1.0.10-1
ii  libinput10                 1.16.4-3
ii  libjson-glib-1.0-0         1.6.2-1
ii  libpango-1.0-0             1.46.2-3
ii  libpangocairo-1.0-0        1.46.2-3
ii  libpangoft2-1.0-0          1.46.2-3
ii  libpipewire-0.3-0          0.3.19-4
ii  libsm6                     2:1.2.3-1
ii  libstartup-notification0   0.12-6+b1
ii  libsystemd0                247.3-1
ii  libudev1                   247.3-1
ii  libwacom2                  1.8-2
ii  libwayland-server0         1.18.0-2~exp1.1
ii  libx11-6                   2:1.7.0-2
ii  libx11-xcb1                2:1.7.0-2
ii  libxau6                    1:1.0.9-1
ii  libxcb-randr0              1.14-3
ii  libxcb-res0                1.14-3
ii  libxcb1                    1.14-3
ii  libxcomposite1             1:0.4.5-1
ii  libxcursor1                1:1.2.0-2
ii  libxdamage1                1:1.1.5-2
ii  libxext6                   2:1.3.3-1.1
ii  libxfixes3                 1:5.0.3-2
ii  libxi6                     2:1.7.10-1
ii  libxinerama1               2:1.1.4-2
ii  libxkbcommon-x11-0         1.0.3-2
ii  libxkbcommon0              1.0.3-2
ii  libxkbfile1                1:1.1.0-1
ii  libxrandr2                 2:1.5.1-1
ii  libxtst6                   2:1.2.3-1
ii  mutter-common              3.38.3-2

libmutter-7-0 recommends no packages.

libmutter-7-0 suggests no packages.

Versions of packages libmutter-7-0 is related to:
ii  libegl-mesa0 [libegl-vendor]  20.3.4-1
ii  libgl1-mesa-dri               20.3.4-1
ii  libglx-mesa0 [libglx-vendor]  20.3.4-1

-- no debconf information
Thank you for using reportbug

---

From: Bernhard Übelacker <[email-masked]>
Date: Fri, 5 Mar 2021 16:15:07 +0100

affects 984593 gnome-shell