[mutter] renderer/native: Discard page flip retries when rebuilding views



commit 70de90ebced764c9cf5d9039b0646cd725b67abe
Author: Jonas Ã…dahl <jadahl gmail com>
Date:   Wed Jun 19 21:14:05 2019 +0200

    renderer/native: Discard page flip retries when rebuilding views
    
    Rebuilding views means we don't care to retry page flip attempts for
    previous views, especially since connectors may have been disconnected,
    making a page flip retry hit an assert a flipped CRTC has connectors
    associated with it.
    
    Fixes: https://gitlab.gnome.org/GNOME/mutter/issues/619
    
    https://gitlab.gnome.org/GNOME/mutter/merge_requests/630

 src/backends/native/meta-renderer-native.c | 6 ++++++
 1 file changed, 6 insertions(+)
---
diff --git a/src/backends/native/meta-renderer-native.c b/src/backends/native/meta-renderer-native.c
index c455a1310..e1828e857 100644
--- a/src/backends/native/meta-renderer-native.c
+++ b/src/backends/native/meta-renderer-native.c
@@ -3116,9 +3116,15 @@ meta_renderer_native_create_view (MetaRenderer       *renderer,
 static void
 meta_renderer_native_rebuild_views (MetaRenderer *renderer)
 {
+  MetaRendererNative *renderer_native = META_RENDERER_NATIVE (renderer);
+  MetaBackendNative *backend_native =
+    META_BACKEND_NATIVE (renderer_native->backend);
+  MetaKms *kms = meta_backend_native_get_kms (backend_native);
   MetaRendererClass *parent_renderer_class =
     META_RENDERER_CLASS (meta_renderer_native_parent_class);
 
+  meta_kms_discard_pending_page_flips (kms);
+
   parent_renderer_class->rebuild_views (renderer);
 
   meta_renderer_native_queue_modes_reset (META_RENDERER_NATIVE (renderer));


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]