hc
2023-11-22 f743a7adbd6e230d66a6206fa115b59fec2d88eb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
From 1806bb01880ce06cf8e163b750febe3d40ac5fdc Mon Sep 17 00:00:00 2001
From: Jeffy Chen <jeffy.chen@rock-chips.com>
Date: Mon, 31 May 2021 01:41:57 +0800
Subject: [PATCH 10/17] HACK: [ozone/wayland]: Force disable implicit external
 sync
 
The Mali's implicit external sync seems broken.
 
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
---
 ui/ozone/platform/wayland/gpu/gbm_surfaceless_wayland.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
 
diff --git a/ui/ozone/platform/wayland/gpu/gbm_surfaceless_wayland.cc b/ui/ozone/platform/wayland/gpu/gbm_surfaceless_wayland.cc
index 0d95037ed..66a1bfbde 100644
--- a/ui/ozone/platform/wayland/gpu/gbm_surfaceless_wayland.cc
+++ b/ui/ozone/platform/wayland/gpu/gbm_surfaceless_wayland.cc
@@ -254,10 +254,11 @@ void GbmSurfacelessWayland::SwapBuffersAsync(
   } else {
     // TODO(fangzhoug): the following should be replaced by a per surface flush
     // as it gets implemented in GL drivers.
-    EGLSyncKHR fence = InsertFence(has_implicit_external_sync_);
+    // HACK: The Mali's implicit external sync seems broken.
+    EGLSyncKHR fence = InsertFence(/* has_implicit_external_sync_ */ false);
     CHECK_NE(fence, EGL_NO_SYNC_KHR) << "eglCreateSyncKHR failed";
 
-    fence_wait_task = base::BindOnce(&WaitForEGLFence, GetDisplay(), fence);
+    fence_wait_task = base::BindOnce(&WaitForEGLFence, GetEGLDisplay(), fence);
   }
 
   base::OnceClosure fence_retired_callback = base::BindOnce(
-- 
2.20.1