diff options
author | liberato <liberato@chromium.org> | 2016-03-09 13:09:41 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-09 21:11:04 +0000 |
commit | 21cddbb0b8e5790fbe390b87844963e47a6e1e9f (patch) | |
tree | 1c35e00ec95ac557c1793f66733031fba950eed7 /gpu | |
parent | cfbc8cb058dcc6cf88f1c4d70c8eb76652c39123 (diff) | |
download | chromium_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.cc | 15 | ||||
-rw-r--r-- | gpu/config/gpu_driver_bug_workaround_type.h | 2 |
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, \ |