|
|
gpu: Thread-safe command buffer state lookup.
This makes client side (in-process / proxy) command buffer state thread-
safe and adds release count to the client-server shared state. This
allows the compositor thread to monitor worker context sync token in the
service.
Client side command buffer state is synchronized using a lock. Extra
caching of the state is added to command buffer helper so that it
doesn't acquire the lock for every command.
Also fixes command buffer memory tracing so that it happens on the same
thread which the context provider is bound to.
R=piman@chromium.org,jbauman@chromium.org
BUG= 514813, 638862
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Committed: https://crrev.com/1285660590d371fedced6253c43be569c2d054ee
Cr-Commit-Position: refs/heads/master@{#437651}
Total comments: 23
Total comments: 11
Total comments: 2
Total comments: 6
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+390 lines, -310 lines) |
Patch |
 |
M |
cc/test/test_context_support.h
|
View
|
1
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
cc/test/test_context_support.cc
|
View
|
1
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
 |
M |
content/common/gpu/client/context_provider_command_buffer.cc
|
View
|
1
2
3
4
5
|
2 chunks |
+5 lines, -2 lines |
0 comments
|
Download
|
 |
M |
content/renderer/pepper/ppb_graphics_3d_impl.cc
|
View
|
|
1 chunk |
+2 lines, -4 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/client_test_helper.h
|
View
|
1
|
2 chunks |
+4 lines, -3 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/client_test_helper.cc
|
View
|
1
|
3 chunks |
+21 lines, -25 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/cmd_buffer_helper.h
|
View
|
1
2
3
4
5
6
|
9 chunks |
+14 lines, -40 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/cmd_buffer_helper.cc
|
View
|
1
2
3
4
5
6
|
14 chunks |
+48 lines, -30 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/cmd_buffer_helper_test.cc
|
View
|
1
|
3 chunks |
+3 lines, -3 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/context_support.h
|
View
|
1
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/gles2_implementation.h
|
View
|
1
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/gles2_implementation.cc
|
View
|
1
2
|
2 chunks |
+6 lines, -11 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/gpu_control.h
|
View
|
1
|
1 chunk |
+18 lines, -7 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/ring_buffer.cc
|
View
|
1
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/common/cmd_buffer_common.cc
|
View
|
1
|
1 chunk |
+0 lines, -11 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/common/command_buffer.h
|
View
|
1
2
3
4
5
6
|
5 chunks |
+7 lines, -20 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/common/command_buffer_mock.h
|
View
|
1
|
1 chunk |
+3 lines, -2 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/command_buffer_service.h
|
View
|
1
|
3 chunks |
+7 lines, -3 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/command_buffer_service.cc
|
View
|
1
|
5 chunks |
+18 lines, -12 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/tests/gl_manager.h
|
View
|
1
2
3
4
|
2 chunks |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/tests/gl_manager.cc
|
View
|
1
2
3
4
|
3 chunks |
+9 lines, -0 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/tests/gl_readback_unittest.cc
|
View
|
1
2
3
4
|
2 chunks |
+4 lines, -3 lines |
0 comments
|
Download
|
 |
M |
gpu/gles2_conform_support/egl/context.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
gpu/gles2_conform_support/egl/context.cc
|
View
|
|
1 chunk |
+5 lines, -0 lines |
0 comments
|
Download
|
 |
M |
gpu/ipc/client/command_buffer_proxy_impl.h
|
View
|
1
2
3
|
6 chunks |
+16 lines, -15 lines |
0 comments
|
Download
|
 |
M |
gpu/ipc/client/command_buffer_proxy_impl.cc
|
View
|
1
2
3
|
27 chunks |
+119 lines, -38 lines |
0 comments
|
Download
|
 |
M |
gpu/ipc/in_process_command_buffer.h
|
View
|
1
2
|
5 chunks |
+5 lines, -7 lines |
0 comments
|
Download
|
 |
M |
gpu/ipc/in_process_command_buffer.cc
|
View
|
1
2
|
9 chunks |
+34 lines, -42 lines |
0 comments
|
Download
|
 |
M |
gpu/ipc/service/gpu_command_buffer_stub.cc
|
View
|
1
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
ppapi/proxy/ppapi_command_buffer_proxy.h
|
View
|
1
|
2 chunks |
+3 lines, -3 lines |
0 comments
|
Download
|
 |
M |
ppapi/proxy/ppapi_command_buffer_proxy.cc
|
View
|
1
|
5 chunks |
+22 lines, -26 lines |
0 comments
|
Download
|
Dependent Patchsets:
Total messages: 36 (21 generated)
|