diff options
author | Daniel Sievers <sievers@chromium.org> | 2015-07-16 15:48:37 -0700 |
---|---|---|
committer | Daniel Sievers <sievers@chromium.org> | 2015-07-16 22:49:50 +0000 |
commit | 0c74a9df13b5a6a0ae8b4e846d5e4fbf460efd82 (patch) | |
tree | c2f61bc0265c41a646107a08dbf81eb3e8bab14d | |
parent | b1395f41d8620dd38b7e9f8063e5c4f5d59b2518 (diff) | |
download | chromium_src-0c74a9df13b5a6a0ae8b4e846d5e4fbf460efd82.zip chromium_src-0c74a9df13b5a6a0ae8b4e846d5e4fbf460efd82.tar.gz chromium_src-0c74a9df13b5a6a0ae8b4e846d5e4fbf460efd82.tar.bz2 |
gpu: Disable program caching on Adreno 4xx 103.0 drivers
R=dyen@chromium.org
TBR=zmo@chromium.org
BUG=486117
Review URL: https://codereview.chromium.org/1238753003 .
Cr-Commit-Position: refs/heads/master@{#338737}
(cherry picked from commit 24a52b1fc00fd2ba8c67195be93282b5de3ba848)
Review URL: https://codereview.chromium.org/1237453006 .
Cr-Commit-Position: refs/branch-heads/2454@{#39}
Cr-Branched-From: 12bfc3360892ec53cd00fc239a47e5298beb063b-refs/heads/master@{#338390}
-rw-r--r-- | content/common/gpu/gpu_command_buffer_stub.cc | 3 | ||||
-rw-r--r-- | gpu/config/gpu_driver_bug_list_json.cc | 18 | ||||
-rw-r--r-- | gpu/config/gpu_driver_bug_workaround_type.h | 2 |
3 files changed, 21 insertions, 2 deletions
diff --git a/content/common/gpu/gpu_command_buffer_stub.cc b/content/common/gpu/gpu_command_buffer_stub.cc index 81a6e2c..3cd0ed0 100644 --- a/content/common/gpu/gpu_command_buffer_stub.cc +++ b/content/common/gpu/gpu_command_buffer_stub.cc @@ -560,7 +560,8 @@ void GpuCommandBufferStub::OnInitialize( if (!context->GetTotalGpuMemory(&total_gpu_memory_)) total_gpu_memory_ = 0; - if (!context_group_->has_program_cache()) { + if (!context_group_->has_program_cache() && + !context_group_->feature_info()->workarounds().disable_program_cache) { context_group_->set_program_cache( channel_->gpu_channel_manager()->program_cache()); } diff --git a/gpu/config/gpu_driver_bug_list_json.cc b/gpu/config/gpu_driver_bug_list_json.cc index 1f5eced..b5e9e6d 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": "8.18", + "version": "8.19", "entries": [ { "id": 1, @@ -1467,6 +1467,22 @@ LONG_STRING_CONST( "features": [ "unbind_egl_context_to_flush_driver_caches" ] + }, + { + "id": 124, + "description": "Certain Adreno 4xx drivers often crash in glProgramBinary.", + "cr_bugs": [486117], + "os": { + "type": "android" + }, + "driver_version": { + "op": "=", + "value": "103.0" + }, + "gl_renderer": "Adreno \\(TM\\) 4.*", + "features": [ + "disable_program_cache" + ] } ] } diff --git a/gpu/config/gpu_driver_bug_workaround_type.h b/gpu/config/gpu_driver_bug_workaround_type.h index 7830fbe..41f2918 100644 --- a/gpu/config/gpu_driver_bug_workaround_type.h +++ b/gpu/config/gpu_driver_bug_workaround_type.h @@ -44,6 +44,8 @@ disable_ns_cgl_surface_api) \ GPU_OP(DISABLE_POST_SUB_BUFFERS_FOR_ONSCREEN_SURFACES, \ disable_post_sub_buffers_for_onscreen_surfaces) \ + GPU_OP(DISABLE_PROGRAM_CACHE, \ + disable_program_cache) \ GPU_OP(DISABLE_TIMESTAMP_QUERIES, \ disable_timestamp_queries) \ GPU_OP(ETC1_POWER_OF_TWO_ONLY, \ |