summaryrefslogtreecommitdiffstats
path: root/gpu
diff options
context:
space:
mode:
Diffstat (limited to 'gpu')
-rw-r--r--gpu/command_buffer/service/feature_info.cc10
-rw-r--r--gpu/config/gpu_driver_bug_list_json.cc18
-rw-r--r--gpu/config/gpu_driver_bug_workaround_type.h2
3 files changed, 29 insertions, 1 deletions
diff --git a/gpu/command_buffer/service/feature_info.cc b/gpu/command_buffer/service/feature_info.cc
index 5706086..803b121 100644
--- a/gpu/command_buffer/service/feature_info.cc
+++ b/gpu/command_buffer/service/feature_info.cc
@@ -17,6 +17,10 @@
#include "ui/gl/gl_fence.h"
#include "ui/gl/gl_implementation.h"
+#if !defined(OS_MACOSX)
+#include "ui/gl/gl_fence_egl.h"
+#endif
+
namespace gpu {
namespace gles2 {
@@ -1020,6 +1024,12 @@ void FeatureInfo::InitializeFeatures() {
texture_format_validators_[GL_RG_EXT].AddValue(GL_HALF_FLOAT_OES);
}
}
+
+#if !defined(OS_MACOSX)
+ if (workarounds_.ignore_egl_sync_failures) {
+ gfx::GLFenceEGL::SetIgnoreFailures();
+ }
+#endif
}
void FeatureInfo::AddExtensionString(const char* s) {
diff --git a/gpu/config/gpu_driver_bug_list_json.cc b/gpu/config/gpu_driver_bug_list_json.cc
index 26be952..382bcba 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.14",
+ "version": "7.15",
"entries": [
{
"id": 1,
@@ -1118,6 +1118,22 @@ LONG_STRING_CONST(
"features": [
"use_non_zero_size_for_client_side_stream_buffers"
]
+ },
+ {
+ "id": 99,
+ "description": "Qualcomm driver before Lollipop deletes egl sync objects after context destruction",
+ "cr_bugs": [453857],
+ "os": {
+ "type": "android",
+ "version": {
+ "op": "<",
+ "value": "5.0.0"
+ }
+ },
+ "gl_vendor": "Qualcomm.*",
+ "features": [
+ "ignore_egl_sync_failures"
+ ]
}
]
}
diff --git a/gpu/config/gpu_driver_bug_workaround_type.h b/gpu/config/gpu_driver_bug_workaround_type.h
index 77d721b..f03b7a2 100644
--- a/gpu/config/gpu_driver_bug_workaround_type.h
+++ b/gpu/config/gpu_driver_bug_workaround_type.h
@@ -58,6 +58,8 @@
gl_begin_gl_end_on_fbo_change_to_backbuffer) \
GPU_OP(GL_CLEAR_BROKEN, \
gl_clear_broken) \
+ GPU_OP(IGNORE_EGL_SYNC_FAILURES, \
+ ignore_egl_sync_failures) \
GPU_OP(INIT_GL_POSITION_IN_VERTEX_SHADER, \
init_gl_position_in_vertex_shader) \
GPU_OP(INIT_TEXTURE_MAX_ANISOTROPY, \