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

Issue 2257693002: services/ui: Use a gpu::GpuChannelHost when creating ui::OutputSurface. (Closed)

Created:
4 years, 4 months ago by sadrul
Modified:
4 years, 4 months ago
Reviewers:
sky, piman
CC:
chromium-reviews, rjkroege, mlamouri+watch-content_chromium.org, jam, darin-cc_chromium.org, tfarina
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

services/ui: Use a gpu::GpuChannelHost when creating ui::OutputSurface. There are two users of ui::OutputSurface, and this change makes things more correct for both. Because: . renderer: RenderThreadImpl already creates the GpuChannelHost instance synchronously before creating the OutputSurface in non-mus. This does the same for mus, instead of potentially delaying the GpuChannelHost creation (or doing it in the compositor thread). . ui or browser: Before this change, SurfaceContextFactory would create the OutputSurface, and immediately set it on the Compositor, leading to the synchronous creation of GpuChannelHost. This change just makes that more obvious, and creates the GpuChannelHost synchronously first before creating the OutputSurface. This change also makes it possible to simplify ui::GpuService to not be usable from multiple threads. BUG=638647 Committed: https://crrev.com/12e259d5a209aa333c5cf748bffcad031e173786 Cr-Commit-Position: refs/heads/master@{#413011}

Patch Set 1 #

Patch Set 2 : mus-demo #

Total comments: 8

Patch Set 3 : . #

Total comments: 2

Patch Set 4 : . #

Unified diffs Side-by-side diffs Delta from patch set Stats (+67 lines, -48 lines) Patch
M content/renderer/mus/render_widget_mus_connection.h View 2 chunks +4 lines, -3 lines 0 comments Download
M content/renderer/mus/render_widget_mus_connection.cc View 1 chunk +4 lines, -2 lines 0 comments Download
M content/renderer/render_thread_impl.cc View 1 chunk +3 lines, -1 line 0 comments Download
M services/ui/demo/bitmap_uploader.h View 1 2 3 2 chunks +2 lines, -4 lines 0 comments Download
M services/ui/demo/bitmap_uploader.cc View 1 2 2 chunks +8 lines, -8 lines 0 comments Download
M services/ui/demo/mus_demo.cc View 1 2 1 chunk +2 lines, -2 lines 0 comments Download
M services/ui/public/cpp/context_provider.h View 3 chunks +6 lines, -3 lines 0 comments Download
M services/ui/public/cpp/context_provider.cc View 1 chunk +5 lines, -3 lines 0 comments Download
M services/ui/public/cpp/gles2_context.h View 2 chunks +7 lines, -5 lines 0 comments Download
M services/ui/public/cpp/gles2_context.cc View 1 2 3 2 chunks +10 lines, -7 lines 0 comments Download
M services/ui/public/cpp/output_surface.h View 1 chunk +5 lines, -3 lines 0 comments Download
M services/ui/public/cpp/output_surface.cc View 1 chunk +8 lines, -5 lines 0 comments Download
M ui/views/mus/surface_context_factory.cc View 1 chunk +3 lines, -2 lines 0 comments Download

Messages

Total messages: 31 (22 generated)
sadrul
piman@ Please review content/ sky@ Please review services/ui
4 years, 4 months ago (2016-08-18 02:09:21 UTC) #9
piman
lgtm
4 years, 4 months ago (2016-08-18 03:02:01 UTC) #12
sky
https://codereview.chromium.org/2257693002/diff/20001/services/ui/demo/bitmap_uploader.cc File services/ui/demo/bitmap_uploader.cc (right): https://codereview.chromium.org/2257693002/diff/20001/services/ui/demo/bitmap_uploader.cc#newcode43 services/ui/demo/bitmap_uploader.cc:43: gpu_service->EstablishGpuChannelSync()); Aren't these all rather expensive calls? Seems like ...
4 years, 4 months ago (2016-08-18 13:15:45 UTC) #13
sadrul
https://codereview.chromium.org/2257693002/diff/20001/services/ui/demo/bitmap_uploader.cc File services/ui/demo/bitmap_uploader.cc (right): https://codereview.chromium.org/2257693002/diff/20001/services/ui/demo/bitmap_uploader.cc#newcode43 services/ui/demo/bitmap_uploader.cc:43: gpu_service->EstablishGpuChannelSync()); On 2016/08/18 13:15:45, sky wrote: > Aren't these ...
4 years, 4 months ago (2016-08-18 14:59:49 UTC) #16
sky
LGTM https://codereview.chromium.org/2257693002/diff/20001/services/ui/public/cpp/gles2_context.cc File services/ui/public/cpp/gles2_context.cc (right): https://codereview.chromium.org/2257693002/diff/20001/services/ui/public/cpp/gles2_context.cc#newcode80 services/ui/public/cpp/gles2_context.cc:80: std::unique_ptr<GLES2Context> gles2_context(new GLES2Context); On 2016/08/18 14:59:48, sadrul wrote: ...
4 years, 4 months ago (2016-08-18 19:12:09 UTC) #19
sadrul
https://codereview.chromium.org/2257693002/diff/20001/services/ui/public/cpp/gles2_context.cc File services/ui/public/cpp/gles2_context.cc (right): https://codereview.chromium.org/2257693002/diff/20001/services/ui/public/cpp/gles2_context.cc#newcode80 services/ui/public/cpp/gles2_context.cc:80: std::unique_ptr<GLES2Context> gles2_context(new GLES2Context); On 2016/08/18 19:12:09, sky wrote: > ...
4 years, 4 months ago (2016-08-18 20:53:28 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/2257693002/60001
4 years, 4 months ago (2016-08-18 23:59:57 UTC) #27
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years, 4 months ago (2016-08-19 01:37:18 UTC) #29
commit-bot: I haz the power
4 years, 4 months ago (2016-08-19 01:46:21 UTC) #31
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/12e259d5a209aa333c5cf748bffcad031e173786
Cr-Commit-Position: refs/heads/master@{#413011}

Powered by Google App Engine
This is Rietveld 408576698