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