summaryrefslogtreecommitdiffstats
path: root/gpu
diff options
context:
space:
mode:
Diffstat (limited to 'gpu')
-rw-r--r--gpu/command_buffer/service/feature_info.cc3
-rw-r--r--gpu/config/gpu_driver_bug_list_json.cc17
-rw-r--r--gpu/config/gpu_driver_bug_workaround_type.h2
3 files changed, 20 insertions, 2 deletions
diff --git a/gpu/command_buffer/service/feature_info.cc b/gpu/command_buffer/service/feature_info.cc
index eea252f..b9fd20e 100644
--- a/gpu/command_buffer/service/feature_info.cc
+++ b/gpu/command_buffer/service/feature_info.cc
@@ -685,7 +685,8 @@ void FeatureInfo::InitializeFeatures() {
// when available.
}
- if (is_es3) {
+ if ((is_es3 || extensions.Contains("GL_EXT_discard_framebuffer")) &&
+ !workarounds_.disable_ext_discard_framebuffer) {
// DiscardFramebufferEXT is automatically bound to InvalidateFramebuffer.
AddExtensionString("GL_EXT_discard_framebuffer");
}
diff --git a/gpu/config/gpu_driver_bug_list_json.cc b/gpu/config/gpu_driver_bug_list_json.cc
index a115bf5..6346e42 100644
--- a/gpu/config/gpu_driver_bug_list_json.cc
+++ b/gpu/config/gpu_driver_bug_list_json.cc
@@ -85,7 +85,7 @@ const char kGpuDriverBugListJson[] = LONG_STRING_CONST(
{
"name": "gpu driver bug list",
// Please update the version number whenever you change this file.
- "version": "2.14",
+ "version": "2.15",
"entries": [
{
"id": 1,
@@ -605,6 +605,21 @@ const char kGpuDriverBugListJson[] = LONG_STRING_CONST(
"features": [
"validate_multisample_buffer_allocation"
]
+ },
+ {
+ "id": 40,
+ "cr_bugs": [290876],
+ "description": "Framebuffer discarding causes flickering on ARM",
+ "os": {
+ "type": "android"
+ },
+ "gl_vendor": {
+ "op": "beginwith",
+ "value": "ARM"
+ },
+ "features": [
+ "disable_ext_discard_framebuffer"
+ ]
}
]
}
diff --git a/gpu/config/gpu_driver_bug_workaround_type.h b/gpu/config/gpu_driver_bug_workaround_type.h
index 3934d15..e9b3524 100644
--- a/gpu/config/gpu_driver_bug_workaround_type.h
+++ b/gpu/config/gpu_driver_bug_workaround_type.h
@@ -70,6 +70,8 @@
use_virtualized_gl_contexts) \
GPU_OP(VALIDATE_MULTISAMPLE_BUFFER_ALLOCATION, \
validate_multisample_buffer_allocation) \
+ GPU_OP(DISABLE_EXT_DISCARD_FRAMEBUFFER, \
+ disable_ext_discard_framebuffer) \
namespace gpu {