Public bug reported:

Description:
- When using GNOME with fractional scaling enabled via the 
scale-monitor-framebuffer experimental feature, mutter repeatedly logs the 
following assertion failure:

gnome-shell[2095]: meta_window_set_stack_position_no_sync: assertion
'window->stack_position >= 0' failed

- This occurs reliably when launching slow-starting applications
(Firefox, Shortwave, others). It is always preceded by:

gnome-shell[2095]: Can't update stage views actor unnamed [ClutterActor]
is on because it needs an allocation.

- Usually gnome-shell survives the assertion, but on at least one
occasion it caused a complete session crash, killing all applications
and logging out the user.


Hardware:
iMac 17,1 (Late 2015)
AMD Radeon HD 7800 Series (radeonsi, pitcairn)
Three displays: internal 5K display at 150% scaling, two external monitors at 
100%


Software:
Linux Mint 22.2 (Ubuntu 24.04 noble base)
gnome-shell 46.0-0ubuntu6~24.04.13
libmutter-14-0 46.2-1ubuntu0.24.04.14
mutter-common 46.2-1ubuntu0.24.04.14
gnome-shell-extension-desktop-icons-ng 46+really47.0.9-1ubuntu5 (installed as 
per LP: #1976204)


Experimental features enabled:
['scale-monitor-framebuffer']


Reproducer:
Enable fractional scaling (scale-monitor-framebuffer) with a mixed scaling 
setup (one display at 150%, others at 100%)
Launch a slow-starting application such as Firefox or Shortwave
Observe assertion in journal: journalctl -f | grep stack_position

Journal sequence at time of assertion:
Mar 31 10:07:23 gnome-shell[2095]: Can't update stage views actor unnamed 
[ClutterActor] is on because it needs an allocation.
Mar 31 10:07:23 gnome-shell[2095]: Can't update stage views actor unnamed 
[ClutterActor] is on because it needs an allocation.
Mar 31 10:07:23 gnome-shell[2095]: Can't update stage views actor unnamed 
[ClutterActor] is on because it needs an allocation.
Mar 31 10:07:25 systemd[1883]: Started app-gnome-firefox-8650.scope - 
Application launched by gnome-shell.
Mar 31 10:07:26 gnome-shell[2095]: meta_window_set_stack_position_no_sync: 
assertion 'window->stack_position >= 0' failed

Journal sequence at time of full session crash:
Mar 30 18:55:48 gnome-shell[1978]: Can't update stage views actor unnamed 
[ClutterActor] is on because it needs an allocation.
Mar 30 18:55:49 dbus-daemon[1801]: Activating service 
name='de.haeckerfelix.Shortwave'
Mar 30 18:55:50 gnome-shell[1978]: meta_window_set_stack_position_no_sync: 
assertion 'window->stack_position >= 0' failed
Mar 30 18:56:51 systemd[1773]: [email protected]: Main process 
exited, code=killed, status=9/KILL


Notes:
- The assertion fires multiple times per session but usually does not crash
- On the occasion of the crash, gnome-shell continued for approximately 61 
seconds after the assertion before dying
- workaround MUTTER_DEBUG_KMS_THREAD_TYPE=user does not prevent the assertion
- Installing gnome-shell-extension-desktop-icons-ng (fix for LP: #1976204) did 
not prevent the assertion but may have improved crash survival
- No GNOME Shell extensions were installed prior to installing DING as a 
workaround attempt
- The bug does not reproduce under GNOME on Xorg (gnome-xorg session)
- Related upstream issue area: window stack position not initialized before 
compositor attempts to place window during slow application startup under 
fractional scaling
- Perhaps related to #1976204

** Affects: mutter (Ubuntu)
     Importance: Undecided
         Status: New

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

Title:
  meta_window_set_stack_position_no_sync assertion failure and session
  crash under fractional scaling (scale-monitor-framebuffer) when
  launching applications

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


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

Reply via email to