Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(78)

Issue 2572703004: exo: Directly create GpuMemoryBufferImpl when a handle is available. (Closed)

Created:
4 years ago by sadrul
Modified:
4 years ago
Reviewers:
reveman, jam
CC:
chromium-reviews, Peng
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

exo: Directly create GpuMemoryBufferImpl when a handle is available. Instead of going through the GpuMemoryBufferManager, directly allocate the right kind of GpuMemoryBuffer. One of the changes with the existing code is that the buffer is currently always created on the IO thread. With this change, that is no longer enforced. This thus avoids thread hopping during buffer allocation, and some complex code in BrowserGpuMemoryBufferManager. This is also the only use of GpuMemoryBufferManager::CreateGpuMemoryBufferFromHandle(). So this CL removes that (and the corresponding various implementations). BUG=643746 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel TBR=jam@ for top-level owner for updating for API change. Committed: https://crrev.com/00a4065140b523047346d4b2a593cb6fad1a4409 Cr-Commit-Position: refs/heads/master@{#438435}

Patch Set 1 #

Patch Set 2 : fix non-ozone build #

Total comments: 4

Patch Set 3 : . #

Total comments: 2

Patch Set 4 : null callback #

Unified diffs Side-by-side diffs Delta from patch set Stats (+13 lines, -175 lines) Patch
M blimp/client/support/compositor/blimp_gpu_memory_buffer_manager.h View 1 2 1 chunk +0 lines, -4 lines 0 comments Download
M blimp/client/support/compositor/blimp_gpu_memory_buffer_manager.cc View 1 2 1 chunk +0 lines, -13 lines 0 comments Download
M cc/test/test_gpu_memory_buffer_manager.h View 1 2 1 chunk +0 lines, -4 lines 0 comments Download
M cc/test/test_gpu_memory_buffer_manager.cc View 1 2 1 chunk +0 lines, -17 lines 0 comments Download
M components/exo/display.cc View 1 2 3 2 chunks +4 lines, -6 lines 0 comments Download
M components/exo/shared_memory.cc View 1 2 3 2 chunks +4 lines, -6 lines 0 comments Download
M content/browser/gpu/browser_gpu_memory_buffer_manager.h View 1 2 3 chunks +0 lines, -7 lines 0 comments Download
M content/browser/gpu/browser_gpu_memory_buffer_manager.cc View 1 2 3 chunks +0 lines, -69 lines 0 comments Download
M content/child/child_gpu_memory_buffer_manager.h View 1 2 1 chunk +0 lines, -4 lines 0 comments Download
M content/child/child_gpu_memory_buffer_manager.cc View 1 2 1 chunk +0 lines, -9 lines 0 comments Download
M gpu/command_buffer/client/gpu_memory_buffer_manager.h View 1 2 1 chunk +0 lines, -6 lines 0 comments Download
M gpu/ipc/client/gpu_memory_buffer_impl.h View 1 2 3 1 chunk +3 lines, -3 lines 0 comments Download
M gpu/ipc/client/gpu_memory_buffer_impl.cc View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M services/ui/common/server_gpu_memory_buffer_manager.h View 1 2 1 chunk +0 lines, -4 lines 0 comments Download
M services/ui/common/server_gpu_memory_buffer_manager.cc View 1 2 1 chunk +0 lines, -9 lines 0 comments Download
M services/ui/public/cpp/gpu/client_gpu_memory_buffer_manager.h View 1 2 1 chunk +0 lines, -4 lines 0 comments Download
M services/ui/public/cpp/gpu/client_gpu_memory_buffer_manager.cc View 1 2 1 chunk +0 lines, -9 lines 0 comments Download

Messages

Total messages: 33 (25 generated)
sadrul
Hi! This changes how exo allocates some of the gpu memory buffer: instead of going ...
4 years ago (2016-12-13 19:15:50 UTC) #6
reveman
https://codereview.chromium.org/2572703004/diff/20001/components/exo/display.cc File components/exo/display.cc (right): https://codereview.chromium.org/2572703004/diff/20001/components/exo/display.cc#newcode86 components/exo/display.cc:86: auto gpu_memory_buffer = gpu::GpuMemoryBufferImpl::CreateFromHandle( Can you use gpu::GpuMemoryBufferImplOzoneNativePixmap here ...
4 years ago (2016-12-13 21:30:53 UTC) #9
sadrul
https://codereview.chromium.org/2572703004/diff/20001/components/exo/display.cc File components/exo/display.cc (right): https://codereview.chromium.org/2572703004/diff/20001/components/exo/display.cc#newcode86 components/exo/display.cc:86: auto gpu_memory_buffer = gpu::GpuMemoryBufferImpl::CreateFromHandle( On 2016/12/13 21:30:53, reveman wrote: ...
4 years ago (2016-12-14 01:41:30 UTC) #15
reveman
lgtm % null callback nit https://codereview.chromium.org/2572703004/diff/40001/components/exo/display.cc File components/exo/display.cc (right): https://codereview.chromium.org/2572703004/diff/40001/components/exo/display.cc#newcode35 components/exo/display.cc:35: void DoNothing(const gpu::SyncToken& sync) ...
4 years ago (2016-12-14 02:21:00 UTC) #16
sadrul
+jam@ as top-level owner to stamp (will TBR since API owner has lgtm'ed, and the ...
4 years ago (2016-12-14 03:06:01 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2572703004/60001
4 years ago (2016-12-14 04:54:37 UTC) #28
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years ago (2016-12-14 04:59:35 UTC) #31
commit-bot: I haz the power
4 years ago (2016-12-14 05:02:23 UTC) #33
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/00a4065140b523047346d4b2a593cb6fad1a4409
Cr-Commit-Position: refs/heads/master@{#438435}

Powered by Google App Engine
This is Rietveld 408576698