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

Issue 1831693002: In-mus ozone drm platform implementation. (Closed)

Created:
4 years, 9 months ago by rjkroege
Modified:
4 years, 8 months ago
Reviewers:
dnicoara
CC:
chromium-reviews, kalyank, ozone-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

In-mus ozone drm platform implementation. Add an in-process bridge between the gpu, main and drm threads so that the drm ozone implementation can operate in single-process mode. BUG=558602 Committed: https://crrev.com/5f8dbf8e02accdd13c43556494a5812ff80136ec Cr-Commit-Position: refs/heads/master@{#383856}

Patch Set 1 #

Total comments: 5

Patch Set 2 : review comments #

Total comments: 5

Patch Set 3 : more review comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+502 lines, -11 lines) Patch
M ui/ozone/platform/drm/BUILD.gn View 1 chunk +2 lines, -0 lines 0 comments Download
M ui/ozone/platform/drm/gbm.gypi View 1 chunk +2 lines, -0 lines 0 comments Download
A ui/ozone/platform/drm/mus_thread_proxy.h View 1 2 1 chunk +138 lines, -0 lines 0 comments Download
A ui/ozone/platform/drm/mus_thread_proxy.cc View 1 2 1 chunk +336 lines, -0 lines 0 comments Download
M ui/ozone/platform/drm/ozone_platform_gbm.cc View 8 chunks +24 lines, -11 lines 0 comments Download

Messages

Total messages: 15 (3 generated)
rjkroege
PTAL
4 years, 9 months ago (2016-03-24 00:46:56 UTC) #2
dnicoara
https://codereview.chromium.org/1831693002/diff/1/ui/ozone/platform/drm/mus_thread_proxy.cc File ui/ozone/platform/drm/mus_thread_proxy.cc (right): https://codereview.chromium.org/1831693002/diff/1/ui/ozone/platform/drm/mus_thread_proxy.cc#newcode299 ui/ozone/platform/drm/mus_thread_proxy.cc:299: DCHECK(on_drm_thread_.CalledOnValidThread()); I think these DCHECKs are failing since CreateSafeCallback() ...
4 years, 9 months ago (2016-03-24 02:07:44 UTC) #3
rjkroege
ptal https://codereview.chromium.org/1831693002/diff/1/ui/ozone/platform/drm/mus_thread_proxy.cc File ui/ozone/platform/drm/mus_thread_proxy.cc (right): https://codereview.chromium.org/1831693002/diff/1/ui/ozone/platform/drm/mus_thread_proxy.cc#newcode299 ui/ozone/platform/drm/mus_thread_proxy.cc:299: DCHECK(on_drm_thread_.CalledOnValidThread()); On 2016/03/24 02:07:44, dnicoara wrote: > I ...
4 years, 8 months ago (2016-03-28 22:53:30 UTC) #4
dnicoara
https://codereview.chromium.org/1831693002/diff/20001/ui/ozone/platform/drm/mus_thread_proxy.cc File ui/ozone/platform/drm/mus_thread_proxy.cc (right): https://codereview.chromium.org/1831693002/diff/20001/ui/ozone/platform/drm/mus_thread_proxy.cc#newcode58 ui/ozone/platform/drm/mus_thread_proxy.cc:58: on_drm_thread_.DetachFromThread(); This shouldn't detach from DRM thread if this ...
4 years, 8 months ago (2016-03-29 13:48:22 UTC) #5
rjkroege
PTAL https://codereview.chromium.org/1831693002/diff/20001/ui/ozone/platform/drm/mus_thread_proxy.cc File ui/ozone/platform/drm/mus_thread_proxy.cc (right): https://codereview.chromium.org/1831693002/diff/20001/ui/ozone/platform/drm/mus_thread_proxy.cc#newcode58 ui/ozone/platform/drm/mus_thread_proxy.cc:58: on_drm_thread_.DetachFromThread(); On 2016/03/29 13:48:22, dnicoara wrote: > This ...
4 years, 8 months ago (2016-03-29 21:48:34 UTC) #6
dnicoara
Thanks! LGTM
4 years, 8 months ago (2016-03-29 21:56:35 UTC) #7
dnicoara
https://codereview.chromium.org/1831693002/diff/1/ui/ozone/platform/drm/ozone_platform_gbm.cc File ui/ozone/platform/drm/ozone_platform_gbm.cc (right): https://codereview.chromium.org/1831693002/diff/1/ui/ozone/platform/drm/ozone_platform_gbm.cc#newcode160 ui/ozone/platform/drm/ozone_platform_gbm.cc:160: gl_api_loader_.reset(new GlApiLoader()); On 2016/03/28 22:53:30, rjkroege wrote: > On ...
4 years, 8 months ago (2016-03-29 21:58:38 UTC) #8
rjkroege
On 2016/03/29 21:58:38, dnicoara wrote: > https://codereview.chromium.org/1831693002/diff/1/ui/ozone/platform/drm/ozone_platform_gbm.cc > File ui/ozone/platform/drm/ozone_platform_gbm.cc (right): > > https://codereview.chromium.org/1831693002/diff/1/ui/ozone/platform/drm/ozone_platform_gbm.cc#newcode160 > ...
4 years, 8 months ago (2016-03-29 22:14:03 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1831693002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1831693002/40001
4 years, 8 months ago (2016-03-29 22:15:26 UTC) #11
commit-bot: I haz the power
Committed patchset #3 (id:40001)
4 years, 8 months ago (2016-03-29 23:07:19 UTC) #12
commit-bot: I haz the power
Patchset 3 (id:??) landed as https://crrev.com/5f8dbf8e02accdd13c43556494a5812ff80136ec Cr-Commit-Position: refs/heads/master@{#383856}
4 years, 8 months ago (2016-03-29 23:08:48 UTC) #14
dnicoara
4 years, 8 months ago (2016-03-30 13:33:30 UTC) #15
Message was sent while issue was closed.
On 2016/03/29 22:14:03, rjkroege wrote:
> On 2016/03/29 21:58:38, dnicoara wrote:
> >
>
https://codereview.chromium.org/1831693002/diff/1/ui/ozone/platform/drm/ozone...
> > File ui/ozone/platform/drm/ozone_platform_gbm.cc (right):
> > 
> >
>
https://codereview.chromium.org/1831693002/diff/1/ui/ozone/platform/drm/ozone...
> > ui/ozone/platform/drm/ozone_platform_gbm.cc:160: gl_api_loader_.reset(new
> > GlApiLoader());
> > On 2016/03/28 22:53:30, rjkroege wrote:
> > > On 2016/03/24 02:07:44, dnicoara wrote:
> > > > Is this really needed here? Or can it be shared inside InitializeGPU()?
> > > 
> > > It's needed here to permit mus to load the GL library before (future work)
> > > enabling the sandbox.
> > 
> > I forgot about this ... InitializeGPU() should always be called before the
> > sandbox is initialized. What's different in MUS that violates this
assumption?
> 
> My understanding is that the sandbox must be entered before threads are made.
UI
> and GPU are in different processes in Chrome but are merely different threads
in
> Mus. So initialization has to be divided into pre-sandbox portion and
> post-sandbox GPU-thread portion.

I think GPU initialization will still be broken when the sandbox is enabled
since the GL bindings are loaded during GLSurface::InitializeOneOff() which
would be called in the GPU thread after the sandbox is enabled.

Powered by Google App Engine
This is Rietveld 408576698