Fullscreen direct scanout is not used if you enable the hidden experimental VRR feature in Mutter 46

Bug #2070438 reported by Daniel van Vugt
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
mutter (Ubuntu)
Fix Released
Low
Jeremy Bícha
Noble
Fix Released
Low
Daniel van Vugt
Oracular
Fix Released
Low
Jeremy Bícha

Bug Description

[ Impact ]

Fullscreen direct scanout is not used if you enable the hidden experimental VRR feature in Mutter 46.

[ Test Plan ]

0. Find a monitor that is VRR capable.
1. Set CLUTTER_PAINT=damage-region in /etc/environment
2. gsettings set org.gnome.mutter experimental-features '["variable-refresh-rate"]'
3. Reboot.
4. Log into a Wayland session.
5. Don't panic. The screen is meant to turn red whenever something changes.
6. In Settings > Display verify that variable refresh rate is detected and enabled.
7. Open Google Chrome (Firefox won't work) and start an animation like https://www.vsynctester.com/
8. Press F11 to make it full screen.
9. Verify the screen has now stopped being red.
10. Press F11 again to exit full screen.
11. Verify the screen has gone red again.

If the screen went black at the end, don't panic. That's a separate bug 2066080.

[ Where problems could occur ]

Since the fix affects the runtime decision of whether to allow triple buffering or stay double buffering, the main risk is that triple buffering wouldn't be used in some situation where we would rather have it to maintain a smoother frame rate.

[ Other Info ]

First reported upstream in:
https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1441#note_2062222

We DO NOT recommend enabling the VRR feature anyway because it is still buggy (bug 2066080)

Changed in mutter (Ubuntu Oracular):
assignee: nobody → Jeremy Bícha (jbicha)
milestone: none → ubuntu-24.10
Changed in mutter (Ubuntu Noble):
status: New → Triaged
importance: Undecided → Low
assignee: nobody → Daniel van Vugt (vanvugt)
milestone: none → ubuntu-24.04.1
tags: added: vrr
description: updated
description: updated
description: updated
description: updated
Changed in mutter (Ubuntu Noble):
status: Triaged → In Progress
Revision history for this message
Timo Aaltonen (tjaalton) wrote : Please test proposed package

Hello Daniel, or anyone else affected,

Accepted mutter into noble-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/mutter/46.2-1ubuntu0.24.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-noble to verification-done-noble. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-noble. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in mutter (Ubuntu Noble):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-noble
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Verified fixed in 46.2-1ubuntu0.24.04.1 using the test case in the Bug Description.

tags: added: verification-done-noble
removed: verification-needed-noble
tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mutter - 46.2-1ubuntu0.24.04.1

---------------
mutter (46.2-1ubuntu0.24.04.1) noble; urgency=medium

  [ Daniel van Vugt ]
  * New upstream release 46.2 (LP: #2068598)
    - Fixed mouse clicks falling through to the window behind (LP: #2026194)
    - Fixed a crash in meta_wayland_transaction_commit (LP: #2061739)
    - Fixed night light getting stuck on (LP: #2066902)
  * New upstream release 46.1 (LP: #2064735):
    - Fixed blank screen on hybrid GPU machines using nouveau (LP: #2066931)
    - Fixed a monitor hotplug crash (LP: #2050865)
    - Improved performance on secondary GPU monitors (LP: #2038801)
  * Refreshed patches:
    - Support-Dynamic-triple-double-buffering.patch (LP: #2070437, LP: #2070438)
    - meson-Do-not-mark-CI-test-tools-as-required.patch
    - Mark-several-additional-tests-as-flaky.patch
  * Add clutter/conform gesture tests to the list of known flaky ones:
    it's a new test in Mutter 46 and not yet reliable.
  * Add build-Compile-schemas-locally-for-use-in-build-tests.patch to compile
    gsettings schemas for use in build tests. Debian CI requires this now and
    it makes rebuilds more resilient against infrastructure changes.
  * Add wayland-Disable-linux-drm-syncobj-v1.patch to avoid enabling major
    new features in Noble updates, as detailed in:
    https://lists.ubuntu.com/archives/ubuntu-release/2024-May/006087.html
  * Add backends-Handle-null-views-instead-of-creating-dummy-view.patch
    to prevent "clutter_frame_clock_notify_presented: code should not be
    reached" log spam in some Nvidia Wayland sessions (LP: #1967707)
  * Add backends-Restore-support-for-X11-cursor-themes.patch to restore
    support for X11 cursor themes, which was lost in Mutter 46.0
    (LP: #2062377, LP: #2063869)

  [ Jeremy Bícha ]
  * Stop compiling gsettings schemas in debian/rules
  * Opt into Salsa CI
  * Drop packaging references to Hurd since this is Linux-only
  * Update libmutter-14-0.symbols
  * Update Breaks
  * Refreshed patches:
    - window-Add-ability-to-override-the-edge-constraints.patch
    - x11-Add-support-for-fractional-scaling-using-Randr.patch
  * Drop upstreamed patches:
    - Nvidia-secondary-GPU-copy-acceleration.patch
    - compositor-sync-ring-Allow-the-gpu_fence-to-be-moved.patch

  [ Marco Trevisan ]
  * Add place-Always-center-initial-setup.patch (LP: #2016013)

 -- Daniel van Vugt <email address hidden> Fri, 28 Jun 2024 17:35:12 +0800

Changed in mutter (Ubuntu Noble):
status: Fix Committed → Fix Released
Revision history for this message
Chris Halse Rogers (raof) wrote : Update Released

The verification of the Stable Release Update for mutter has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.