New issue
Advanced search Search tips

Issue 800779 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Aug 15
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

mus_content_browsertests aren't using a real AcceleratedWidget

Project Member Reported by kylec...@chromium.org, Jan 10 2018

Issue description

I tried fixing Ozone X11 OSMesa support and found a bug in mus_content_browsertests. The tests don't use a real AcceleratedWidget, despite being browser tests that start a full GPU thread (thread since the tests run with --single-process), which isn't right.

The tests pass now because they run with OSMesa and that doesn't try to draw to the XWindow under Ozone X11. I'm trying to land https://crrev.com/c/537414 which copies the OSMesa output the XWindow. There is an X error for bad X window and crash.

WindowTreeHostMus |init_params.uses_real_accelerated_widget| is false here:

https://cs.chromium.org/chromium/src/ui/aura/mus/window_tree_host_mus.cc?l=65&rcl=0870f08457a9669296c35d15201287271731467e

This is because WindowTreeClient |window_manager_delgate_| is null here:

https://cs.chromium.org/chromium/src/ui/aura/mus/window_tree_client.cc?l=606&rcl=770c0be163a6153941bd07021ef6b096365ba46c
 

Comment 1 by sadrul@chromium.org, Jan 10 2018

This is .. tricky I think. content_browsertests does not have a way of bringing up ash, so I can't think of a straight-forward way for providing a real accelerated widget for the tests.

.. although it looks like if content_browsertests is using AuraTestHelper, then it should be setting things up correctly (i.e. a non-null window_manager_delegate_) [1]? So maybe we are not using AuraTestHelper, and we should? But even then, the test-delegate does not actually send the real accelerated widget back to the WindowTreeHostMus, so we would probably need to fix that too [2].

[1] https://cs.chromium.org/chromium/src/ui/aura/test/aura_test_helper.cc?type=cs&l=105
[2] https://cs.chromium.org/chromium/src/ui/aura/test/mus/test_window_manager_delegate.cc?type=cs&l=20

Comment 2 Deleted

Can we do the same thing as the non-mus CrOS content_browsertests? I'd assume it has the same limitation on not including ash but it creates a real accelerated widget still.

Comment 4 by sky@chromium.org, Jan 10 2018

As Sadrul says, we don't want mus_content_browsertests to have a dependency on ash, so it connects to mus using WindowTreeHostFactory. There is no window manager in this code. None-the-less mus creates a real accelerated widget:  https://chromium.googlesource.com/chromium/src/+/master/services/ui/ws/window_tree_host_factory.cc#29 . It doesn't look like this path notifies the client of the accelerated widget. Probably right thing is to add a WindowTreeHostClient interface that is used in this path and notified of the accelerated widget.

How urgent is this Kyle?
Labels: -Pri-2 Proj-Mustash Pri-3
Not super high priority. I figured out why EGL wasn't working over CRD after upgrading to gLinux, so having OSMesa support isn't strictly necessary.
Components: -MUS Internals>Services>WindowService
Cc: kylec...@chromium.org
Labels: -Proj-Mustash Proj-Mash
Status: WontFix (was: Untriaged)
uses_real_accelerated_widget has been removed, and I believe we've also nuked OSMesa. So, I'm not sure there is anything to do here. I'm closing out, assuming there isn't. If I'm wrong, please reopen.

Sign in to add a comment