diff options
author | boliu <boliu@chromium.org> | 2014-11-13 17:02:53 -0800 |
---|---|---|
committer | Bo Liu <boliu@google.com> | 2014-11-18 10:35:58 -0800 |
commit | 8b70b8257c44a011969316b68be9b5441786809e (patch) | |
tree | 73fa8ca81e44c9ecd1e1c64801eb61f37e34071b | |
parent | 8fd87632b6d48cb96d825bb68d4f1fd457262f36 (diff) | |
download | chromium_org-8b70b8257c44a011969316b68be9b5441786809e.tar.gz |
Cherry-pick: Workaround NVidia eglWaitSyncKHR bug
Clean cherry-pick of chromium
crrev.com/ba561e7fb76fef1a6dfff772b08bd6dde5c94bc9
BUG: 17690996
Original description:
Workaround is to fallback to client wait.
Change-Id: I8d6b41f5bc94307faecffe1401b660a3a722e24d
-rw-r--r-- | gpu/command_buffer/service/feature_info.cc | 3 | ||||
-rw-r--r-- | gpu/config/gpu_driver_bug_list_json.cc | 23 | ||||
-rw-r--r-- | gpu/config/gpu_driver_bug_workaround_type.h | 2 |
3 files changed, 27 insertions, 1 deletions
diff --git a/gpu/command_buffer/service/feature_info.cc b/gpu/command_buffer/service/feature_info.cc index e853d9b593..676a0728a2 100644 --- a/gpu/command_buffer/service/feature_info.cc +++ b/gpu/command_buffer/service/feature_info.cc @@ -812,6 +812,9 @@ void FeatureInfo::InitializeFeatures() { if (workarounds_.disable_egl_khr_fence_sync) { gfx::g_driver_egl.ext.b_EGL_KHR_fence_sync = false; } + if (workarounds_.disable_egl_khr_wait_sync) { + gfx::g_driver_egl.ext.b_EGL_KHR_wait_sync = false; + } #endif if (workarounds_.disable_arb_sync) gfx::g_driver_gl.ext.b_GL_ARB_sync = false; diff --git a/gpu/config/gpu_driver_bug_list_json.cc b/gpu/config/gpu_driver_bug_list_json.cc index bd7f0f78f3..c5566ee18c 100644 --- a/gpu/config/gpu_driver_bug_list_json.cc +++ b/gpu/config/gpu_driver_bug_list_json.cc @@ -19,7 +19,7 @@ const char kGpuDriverBugListJson[] = LONG_STRING_CONST( { "name": "gpu driver bug list", // Please update the version number whenever you change this file. - "version": "7.7", + "version": "7.8", "entries": [ { "id": 1, @@ -1057,6 +1057,27 @@ LONG_STRING_CONST( "features": [ "disable_async_readpixels" ] + }, + { + "id": 94, + "description": "Disable EGL_KHR_wait_sync on NVIDIA with GLES 3.1", + "cr_bugs": [433057], + "os": { + "type": "android", + "version": { + "op": "<=", + "value": "5.0.0" + } + }, + "gl_vendor": "NVIDIA.*", + "gl_type": "gles", + "gl_version": { + "op": "=", + "value": "3.1" + }, + "features": [ + "disable_egl_khr_wait_sync" + ] } ] } diff --git a/gpu/config/gpu_driver_bug_workaround_type.h b/gpu/config/gpu_driver_bug_workaround_type.h index 0d9f200e4a..1c497eaab2 100644 --- a/gpu/config/gpu_driver_bug_workaround_type.h +++ b/gpu/config/gpu_driver_bug_workaround_type.h @@ -28,6 +28,8 @@ disable_depth_texture) \ GPU_OP(DISABLE_EGL_KHR_FENCE_SYNC, \ disable_egl_khr_fence_sync) \ + GPU_OP(DISABLE_EGL_KHR_WAIT_SYNC, \ + disable_egl_khr_wait_sync) \ GPU_OP(DISABLE_EXT_DISCARD_FRAMEBUFFER, \ disable_ext_discard_framebuffer) \ GPU_OP(DISABLE_EXT_DRAW_BUFFERS, \ |