From d7c164e1d7e4781b0a7a17c178cd9c0e0e4ff1e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Sat, 29 Mar 2025 08:57:54 +0100 Subject: [PATCH] onscreen/native: Also promote posted frame in ready callback When the legacy KMS implementation running without a KMS thread receives a cursor only frame, it doesn't do an actual page flip, but just posts a "ready" callback without any timing information. In this case we failed to discard the posted frame, meaning theh onscreen KMS throttling was still thinking it was supposed to wait for the posted frame to be presented. Fixes: df7ac5b0a3 ("onscreen/native: Account for all posted frames") Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/4021 Part-of: --- src/backends/native/meta-onscreen-native.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/backends/native/meta-onscreen-native.c b/src/backends/native/meta-onscreen-native.c index 4f2e1d583..95f7ec3d0 100644 --- a/src/backends/native/meta-onscreen-native.c +++ b/src/backends/native/meta-onscreen-native.c @@ -318,6 +318,7 @@ page_flip_feedback_ready (MetaKmsCrtc *kms_crtc, frame_info->flags |= COGL_FRAME_INFO_FLAG_SYMBOLIC; meta_onscreen_native_notify_frame_complete (onscreen); + meta_onscreen_native_promote_posted_frame (onscreen); maybe_post_next_frame (onscreen); }