summaryrefslogtreecommitdiffstats
path: root/gpu
diff options
context:
space:
mode:
authorliberato <liberato@chromium.org>2016-03-09 13:09:41 -0800
committerCommit bot <commit-bot@chromium.org>2016-03-09 21:11:04 +0000
commit21cddbb0b8e5790fbe390b87844963e47a6e1e9f (patch)
tree1c35e00ec95ac557c1793f66733031fba950eed7 /gpu
parentcfbc8cb058dcc6cf88f1c4d70c8eb76652c39123 (diff)
downloadchromium_src-21cddbb0b8e5790fbe390b87844963e47a6e1e9f.zip
chromium_src-21cddbb0b8e5790fbe390b87844963e47a6e1e9f.tar.gz
chromium_src-21cddbb0b8e5790fbe390b87844963e47a6e1e9f.tar.bz2
Don't detach SurfaceTexture from GL Context on Mali <= KitKat.
Mali with JB doesn't support SurfaceTexture::DetachFromGLContext, so on those devices we don't defer attaching the SurfaceTexture in AVDA. This may cause additional GL context switches if virtual contexts aren't enabled. We also turn off copying the most recent frame to the PictureBuffer textures, since it also crashes on Mali <= KitKat. BUG=591600,591564 CQ_INCLUDE_TRYBOTS=tryserver.chromium.win:win_optional_gpu_tests_rel;tryserver.chromium.mac:mac_optional_gpu_tests_rel Review URL: https://codereview.chromium.org/1760313002 Cr-Commit-Position: refs/heads/master@{#380215}
Diffstat (limited to 'gpu')
-rw-r--r--gpu/config/gpu_driver_bug_list_json.cc15
-rw-r--r--gpu/config/gpu_driver_bug_workaround_type.h2
2 files changed, 17 insertions, 0 deletions
diff --git a/gpu/config/gpu_driver_bug_list_json.cc b/gpu/config/gpu_driver_bug_list_json.cc
index 325a1e6..a7195b1 100644
--- a/gpu/config/gpu_driver_bug_list_json.cc
+++ b/gpu/config/gpu_driver_bug_list_json.cc
@@ -1765,6 +1765,21 @@ LONG_STRING_CONST(
"features": [
"max_texture_size_limit_4096"
]
+ },
+ {
+ "id": 148,
+ "description": "Mali-4xx GPU on JB doesn't support DetachGLContext",
+ "os": {
+ "type": "android",
+ "version": {
+ "op": "<=",
+ "value": "4.4.4"
+ }
+ },
+ "gl_renderer": ".*Mali-4.*",
+ "features": [
+ "surface_texture_cant_detach"
+ ]
}
]
}
diff --git a/gpu/config/gpu_driver_bug_workaround_type.h b/gpu/config/gpu_driver_bug_workaround_type.h
index d65cdca..71ea843 100644
--- a/gpu/config/gpu_driver_bug_workaround_type.h
+++ b/gpu/config/gpu_driver_bug_workaround_type.h
@@ -120,6 +120,8 @@
set_texture_filter_before_generating_mipmap) \
GPU_OP(SIMULATE_OUT_OF_MEMORY_ON_LARGE_TEXTURES, \
simulate_out_of_memory_on_large_textures) \
+ GPU_OP(SURFACE_TEXTURE_CANT_DETACH, \
+ surface_texture_cant_detach) \
GPU_OP(SWIZZLE_RGBA_FOR_ASYNC_READPIXELS, \
swizzle_rgba_for_async_readpixels) \
GPU_OP(TEXSUBIMAGE_FASTER_THAN_TEXIMAGE, \