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

Issue 540443002: Enable sync allocation of GpuMemoryBuffers from the browser process. (Closed)

Created:
6 years, 3 months ago by alexst (slow to review)
Modified:
6 years, 3 months ago
Reviewers:
reveman, piman
CC:
chromium-reviews, jam, sievers+watch_chromium.org, jbauman+watch_chromium.org, darin-cc_chromium.org, kalyank, piman+watch_chromium.org, danakj+watch_chromium.org, achaulk
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Enable sync allocation of GpuMemoryBuffers from the browser process. This operation will be serviced on the IO thread in the GPU process and is expected to be very quick. These sync allocations should be infrequent and happen mostly during startup to enable rendering via EGLImage. BUG=380861 Committed: https://crrev.com/0269a5cd022535da97d21fee45162c24b211f9d3 Cr-Commit-Position: refs/heads/master@{#294109}

Patch Set 1 : #

Patch Set 2 : #

Patch Set 3 : #

Total comments: 2

Patch Set 4 : #

Total comments: 2

Patch Set 5 : #

Total comments: 14

Patch Set 6 : #

Total comments: 4

Patch Set 7 : #

Patch Set 8 : rebase/refactor #

Patch Set 9 : formatting #

Total comments: 16

Patch Set 10 : #

Patch Set 11 : #

Patch Set 12 : #

Total comments: 16

Patch Set 13 : #

Total comments: 1

Patch Set 14 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+332 lines, -221 lines) Patch
M content/browser/gpu/browser_gpu_channel_host_factory.h View 1 2 3 4 5 6 7 8 9 3 chunks +6 lines, -19 lines 0 comments Download
M content/browser/gpu/browser_gpu_channel_host_factory.cc View 1 2 3 4 5 6 7 8 9 6 chunks +15 lines, -53 lines 0 comments Download
A content/browser/gpu/gpu_memory_buffer_factory_host_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +48 lines, -0 lines 0 comments Download
A content/browser/gpu/gpu_memory_buffer_factory_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +72 lines, -0 lines 0 comments Download
M content/common/gpu/client/gpu_memory_buffer_impl.h View 1 2 3 4 5 6 7 8 9 2 chunks +6 lines, -3 lines 0 comments Download
M content/common/gpu/client/gpu_memory_buffer_impl_android.cc View 1 2 3 4 5 6 7 8 9 1 chunk +8 lines, -11 lines 0 comments Download
M content/common/gpu/client/gpu_memory_buffer_impl_linux.cc View 1 2 3 4 5 6 7 8 9 1 chunk +8 lines, -11 lines 0 comments Download
M content/common/gpu/client/gpu_memory_buffer_impl_mac.cc View 1 2 3 4 5 6 7 8 9 1 chunk +8 lines, -11 lines 0 comments Download
M content/common/gpu/client/gpu_memory_buffer_impl_ozone.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +15 lines, -11 lines 0 comments Download
M content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +5 lines, -0 lines 0 comments Download
M content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +30 lines, -2 lines 0 comments Download
M content/common/gpu/client/gpu_memory_buffer_impl_shared_memory.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +5 lines, -0 lines 0 comments Download
M content/common/gpu/client/gpu_memory_buffer_impl_shared_memory.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +18 lines, -0 lines 0 comments Download
M content/common/gpu/client/gpu_memory_buffer_impl_win.cc View 1 2 3 4 5 6 7 8 9 1 chunk +8 lines, -11 lines 0 comments Download
M content/common/gpu/gpu_channel_manager.h View 1 2 3 5 chunks +7 lines, -20 lines 0 comments Download
M content/common/gpu/gpu_channel_manager.cc View 1 2 3 4 5 6 8 10 6 chunks +69 lines, -68 lines 0 comments Download
M content/content_browser.gypi View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
M content/gpu/gpu_child_thread.cc View 1 2 3 4 5 6 7 1 chunk +2 lines, -1 line 0 comments Download

Messages

Total messages: 28 (3 generated)
alexst (slow to review)
Please take a look. This code only does sync allocation for buffers originating from the ...
6 years, 3 months ago (2014-09-04 13:13:52 UTC) #3
piman
One thing, otherwise I think this is good. I can't help but think it would ...
6 years, 3 months ago (2014-09-04 17:21:33 UTC) #4
alexst (slow to review)
https://codereview.chromium.org/540443002/diff/60001/content/common/gpu/gpu_channel_manager.cc File content/common/gpu/gpu_channel_manager.cc (left): https://codereview.chromium.org/540443002/diff/60001/content/common/gpu/gpu_channel_manager.cc#oldcode209 content/common/gpu/gpu_channel_manager.cc:209: } else { These are identified by an int ...
6 years, 3 months ago (2014-09-04 17:46:02 UTC) #5
alexst (slow to review)
PTAL
6 years, 3 months ago (2014-09-04 18:02:32 UTC) #6
piman
https://codereview.chromium.org/540443002/diff/80001/content/common/gpu/gpu_channel_manager.cc File content/common/gpu/gpu_channel_manager.cc (right): https://codereview.chromium.org/540443002/diff/80001/content/common/gpu/gpu_channel_manager.cc#newcode67 content/common/gpu/gpu_channel_manager.cc:67: sender_->Send(new GpuHostMsg_GpuMemoryBufferCreated(handle)); Lost the gpu_memory_buffer_factory_->CreateGpuMemoryBuffer(...) ?
6 years, 3 months ago (2014-09-04 18:08:52 UTC) #7
alexst (slow to review)
https://codereview.chromium.org/540443002/diff/80001/content/common/gpu/gpu_channel_manager.cc File content/common/gpu/gpu_channel_manager.cc (right): https://codereview.chromium.org/540443002/diff/80001/content/common/gpu/gpu_channel_manager.cc#newcode67 content/common/gpu/gpu_channel_manager.cc:67: sender_->Send(new GpuHostMsg_GpuMemoryBufferCreated(handle)); On 2014/09/04 18:08:52, piman (OOO) wrote: > ...
6 years, 3 months ago (2014-09-04 18:45:12 UTC) #8
piman
lgtm
6 years, 3 months ago (2014-09-04 19:01:47 UTC) #9
reveman
https://codereview.chromium.org/540443002/diff/100001/content/common/gpu/client/gpu_memory_buffer_factory_host.h File content/common/gpu/client/gpu_memory_buffer_factory_host.h (right): https://codereview.chromium.org/540443002/diff/100001/content/common/gpu/client/gpu_memory_buffer_factory_host.h#newcode38 content/common/gpu/client/gpu_memory_buffer_factory_host.h:38: unsigned usage) = 0; Not a fan of this ...
6 years, 3 months ago (2014-09-04 19:43:31 UTC) #10
piman
https://codereview.chromium.org/540443002/diff/100001/content/common/gpu/client/gpu_memory_buffer_factory_host.h File content/common/gpu/client/gpu_memory_buffer_factory_host.h (right): https://codereview.chromium.org/540443002/diff/100001/content/common/gpu/client/gpu_memory_buffer_factory_host.h#newcode38 content/common/gpu/client/gpu_memory_buffer_factory_host.h:38: unsigned usage) = 0; On 2014/09/04 19:43:31, reveman wrote: ...
6 years, 3 months ago (2014-09-04 19:59:20 UTC) #11
alexst (slow to review)
PTAL https://codereview.chromium.org/540443002/diff/100001/content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc File content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc (right): https://codereview.chromium.org/540443002/diff/100001/content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc#newcode55 content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc:55: // +1 ensures we always get non-zero IDs. ...
6 years, 3 months ago (2014-09-04 21:14:48 UTC) #12
reveman
https://codereview.chromium.org/540443002/diff/100001/content/common/gpu/client/gpu_memory_buffer_factory_host.h File content/common/gpu/client/gpu_memory_buffer_factory_host.h (right): https://codereview.chromium.org/540443002/diff/100001/content/common/gpu/client/gpu_memory_buffer_factory_host.h#newcode38 content/common/gpu/client/gpu_memory_buffer_factory_host.h:38: unsigned usage) = 0; On 2014/09/04 19:59:20, piman (OOO) ...
6 years, 3 months ago (2014-09-04 22:37:24 UTC) #13
piman
On Thu, Sep 4, 2014 at 3:37 PM, <reveman@chromium.org> wrote: > > https://codereview.chromium.org/540443002/diff/100001/ > content/common/gpu/client/gpu_memory_buffer_factory_host.h ...
6 years, 3 months ago (2014-09-04 23:49:56 UTC) #14
alexst (slow to review)
> > Agree. I guess my question was, can we make this interface be something ...
6 years, 3 months ago (2014-09-05 02:04:53 UTC) #15
reveman
On 2014/09/05 02:04:53, alexst wrote: > > > Agree. I guess my question was, can ...
6 years, 3 months ago (2014-09-05 16:36:32 UTC) #16
alexst (slow to review)
Re-factored based on Dave's patch. GPU is the same, browser is different. Please have another ...
6 years, 3 months ago (2014-09-09 15:41:17 UTC) #17
reveman
https://codereview.chromium.org/540443002/diff/180001/content/browser/gpu/browser_gpu_channel_host_factory.cc File content/browser/gpu/browser_gpu_channel_host_factory.cc (right): https://codereview.chromium.org/540443002/diff/180001/content/browser/gpu/browser_gpu_channel_host_factory.cc#newcode509 content/browser/gpu/browser_gpu_channel_host_factory.cc:509: void BrowserGpuChannelHostFactory::GpuMemoryBufferImplCreatedOnIO( I think this should be named "OnGpuMemoryBufferCreated" ...
6 years, 3 months ago (2014-09-09 17:18:26 UTC) #18
piman
lgtm https://codereview.chromium.org/540443002/diff/180001/content/common/gpu/gpu_channel_manager.cc File content/common/gpu/gpu_channel_manager.cc (right): https://codereview.chromium.org/540443002/diff/180001/content/common/gpu/gpu_channel_manager.cc#newcode28 content/common/gpu/gpu_channel_manager.cc:28: class GpuChannelManagerMessageFilter : public IPC::MessageFilter { On 2014/09/09 ...
6 years, 3 months ago (2014-09-09 20:00:10 UTC) #19
alexst (slow to review)
new patch. https://codereview.chromium.org/540443002/diff/180001/content/browser/gpu/browser_gpu_channel_host_factory.cc File content/browser/gpu/browser_gpu_channel_host_factory.cc (right): https://codereview.chromium.org/540443002/diff/180001/content/browser/gpu/browser_gpu_channel_host_factory.cc#newcode509 content/browser/gpu/browser_gpu_channel_host_factory.cc:509: void BrowserGpuChannelHostFactory::GpuMemoryBufferImplCreatedOnIO( On 2014/09/09 17:18:26, reveman wrote: ...
6 years, 3 months ago (2014-09-09 21:53:57 UTC) #20
reveman
https://codereview.chromium.org/540443002/diff/180001/content/common/gpu/gpu_channel_manager.cc File content/common/gpu/gpu_channel_manager.cc (right): https://codereview.chromium.org/540443002/diff/180001/content/common/gpu/gpu_channel_manager.cc#newcode92 content/common/gpu/gpu_channel_manager.cc:92: gpu_memory_buffer_factory_(GpuMemoryBufferFactory::Create()), On 2014/09/09 21:53:57, alexst wrote: > On 2014/09/09 ...
6 years, 3 months ago (2014-09-09 23:17:55 UTC) #21
alexst (slow to review)
https://codereview.chromium.org/540443002/diff/240001/content/browser/gpu/gpu_memory_buffer_factory_host_impl.h File content/browser/gpu/gpu_memory_buffer_factory_host_impl.h (right): https://codereview.chromium.org/540443002/diff/240001/content/browser/gpu/gpu_memory_buffer_factory_host_impl.h#newcode21 content/browser/gpu/gpu_memory_buffer_factory_host_impl.h:21: // GpuMemoryBufferFactoryHost implementation. On 2014/09/09 23:17:54, reveman wrote: > ...
6 years, 3 months ago (2014-09-10 01:57:50 UTC) #22
reveman
thanks! lgtm after adding a comment https://codereview.chromium.org/540443002/diff/260001/content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc File content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc (right): https://codereview.chromium.org/540443002/diff/260001/content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc#newcode45 content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc:45: handle.global_id.secondary_id = 0; ...
6 years, 3 months ago (2014-09-10 02:34:06 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/alexst@chromium.org/540443002/280001
6 years, 3 months ago (2014-09-10 03:12:07 UTC) #25
alexst (slow to review)
On 2014/09/10 02:34:06, reveman wrote: > thanks! lgtm after adding a comment > > https://codereview.chromium.org/540443002/diff/260001/content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc ...
6 years, 3 months ago (2014-09-10 03:24:04 UTC) #26
commit-bot: I haz the power
Committed patchset #14 (id:280001) as b5fe45963a55e00b2b6ebe5e0f6c198a5452ed5e
6 years, 3 months ago (2014-09-10 05:18:07 UTC) #27
commit-bot: I haz the power
6 years, 3 months ago (2014-09-10 05:27:08 UTC) #28
Message was sent while issue was closed.
Patchset 14 (id:??) landed as
https://crrev.com/0269a5cd022535da97d21fee45162c24b211f9d3
Cr-Commit-Position: refs/heads/master@{#294109}

Powered by Google App Engine
This is Rietveld 408576698