This also affects noble (24.04) with mutter 46.2-1ubuntu0.24.04.16 and
.18, and not only the lock screen: the GDM greeter leaks the same way
when no user is logged in.

Setup: Intel Alder Lake-N (i915), two 2560x1440 HDMI monitors behind a
KVM switch. While the greeter has the displays in power save, one
monitor pulses hotplug every ~9.5 s (drm "change" uevent pair, connector
disconnected/connected ~220 ms apart).

Measured with bpftrace on i915_gem_create_ext_ioctl /
drm_gem_close_ioctl for the gdm user: every pulse allocates ~76 MB (5
scanout-sized buffers) via `meta_monitor_mode_foreach_crtc ->
_cogl_winsys_egl_make_current -> driBindContext -> dri_create_image ->
i915_gem_create_ext`, and only ~4 handles are closed. Greeter shmem
grows ~7 MB/s until it is OOM-killed and GDM restarts it (every ~24 min
all night here, with MemoryMax=2G on user-120.slice; without the cap it
OOM-killed unrelated services). The restart also wakes the monitors.

I backported the upstream fix (af0c9808 + 83c465ff + c145106d, MR !5285
/ !5325) to 46.2-1ubuntu0.24.04.18. The code applies with offsets/fuzz
only. I dropped the new test case and its two META_EXPORT_TEST markers
because the test needs helpers that 46.x does not have; this keeps the
exported symbols of libmutter-14-0 identical to the archive version
(checked with nm -D), so no symbols file change is needed. Debdiff
attached.

Result with the patched package: greeter blanked, 116 hotplug uevents in
10 minutes, shmem stays flat at ~152 MB (before: +76 MB per pulse, 2 GB
after ~4 min). Evidence attached. Overnight (7 h 10 min blanked, ~2680
hotplug pulses): no greeter OOM or restart, shmem stayed between 128 and
186 MB with no swap, and the monitors stayed in power save.

Could the noble task be targeted for an SRU with this backport? I am
happy to test a package from -proposed. An SRU template is in the next
comment.


** Patch added: "noble backport of upstream fix (af0c9808+83c465ff+c145106d)"
   
https://bugs.launchpad.net/bugs/2167374/+attachment/6008798/+files/mutter_46.2-1ubuntu0.24.04.18+gdmleak1.debdiff

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2167374

Title:
  gnome-shell leaks scanout dma-bufs while locked (fixed in mutter 50.5)

To manage notifications about this bug go to:
https://bugs.launchpad.net/mutter/+bug/2167374/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to