New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 669965 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug

Blocked on:
issue 683226



Sign in to add a comment

mash: Cannot query GPU info with telemetry SystemInfo.getInfo, GPUDataManager observer not called

Project Member Reported by jamescook@chromium.org, Nov 30 2016

Issue description

Noticed while working on  issue 669243  mash: Add autotest for starting chrome --mash in smoke suite HWTests

Autotest uses catapult / telemetry to query browser status. Part of the standard chrome launch process is to query "detailed GPU data" via a SystemInfo.getInfo JS command.

This is implemented in a devtools JS handler here:
https://cs.chromium.org/chromium/src/content/browser/devtools/protocol/system_info_handler.cc?l=148

Apparently only the GPU process has this data. It is queried by adding an observer to GPUDataManager. Under --mash that observer is never called.

It looks like the RequestCompleteGPUInfoIfNeeded method is implemented here:
https://cs.chromium.org/chromium/src/content/browser/gpu/gpu_data_manager_impl_private.cc?dr=CSs&sq=package:chromium&rcl=1480508348&l=391

It sends an explicit IPC to the GPU process. I'm guessing our GPU setup is sufficiently different under --mash that this doesn't work.

For now I can work around the problem in my autotest by passing --gpu-no-complete-info-collection, but I suspect this issue will break telemetry tests (like perf tests) in the long run and might break GPU feature detection today.

Sadrul, any ideas what we should do here?

 
Summary: mash: Cannot query GPU info with telemetry SystemInfo.getInfo, GPUDataManager observer not called (was: mash: Cannot query GPU info with telemetry SystemInfo.getInfo, GPUManager observer not called)
Cc: achuith@chromium.org

Comment 3 by sadrul@chromium.org, Nov 30 2016

This is part of the gpu-service work, yeah. The browser does not directly talk to the gpu process in mash.

Who/what is making the call to 'SystemInfo.getInfo()'? Can we not do that for now, or is that currently blocking all testing on device?
The autotest telemetry library calls SystemInfo.getInfo somewhere deep in its guts:
https://cs.chromium.org/chromium/src/third_party/catapult/telemetry/telemetry/internal/backends/chrome/system_info_backend.py?q=SystemInfo.getInfo&sq=package:chromium&l=16&dr=C

I'm avoiding the issue for now by passing --gpu-no-complete-info-collection to chrome in my test, so we're not blocked.

https://chromium-review.googlesource.com/#/c/415267/

Or rather, my new autotest for --mash is not blocked, but eventually we'll hit issues if we run --mash with any other existing autotest.

Comment 6 by sadrul@chromium.org, Jan 20 2017

Blockedon: 683226
Cc: sadrul@chromium.org
Owner: moh...@chromium.org
Status: Started (was: Assigned)
Components: -MUS Internals>Services>WindowService
Project Member

Comment 10 by bugdroid1@chromium.org, Mar 20 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/242f6f8e51efc5df85dc800a590b3d076a1ba0a6

commit 242f6f8e51efc5df85dc800a590b3d076a1ba0a6
Author: James Cook <jamescook@chromium.org>
Date: Tue Mar 20 02:21:39 2018

autotest: Fix desktopui_MashLogin flags

The flag changed from --mash to --enable-features=Mash in chrome
a couple of weeks ago. Change the test to match.

Also update desktopui_MusLogin to use --enable-features=Mus for
the same reason.

Remove the code that skips GPU data collection under Mus because
Mus no longer includes the Viz code that causes that issue.

Update bug tracker component.

BUG=chromium:669965
TEST=desktopui_MashLogin/MusLogin passes locally on eve
Change-Id: Icf49cec4241bfccffaa49e95c960ea22af6a5061
Reviewed-on: https://chromium-review.googlesource.com/969453
Commit-Ready: James Cook <jamescook@chromium.org>
Tested-by: James Cook <jamescook@chromium.org>
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>

[modify] https://crrev.com/242f6f8e51efc5df85dc800a590b3d076a1ba0a6/client/site_tests/desktopui_MashLogin/control
[modify] https://crrev.com/242f6f8e51efc5df85dc800a590b3d076a1ba0a6/client/site_tests/desktopui_MashLogin/desktopui_MashLogin.py
[modify] https://crrev.com/242f6f8e51efc5df85dc800a590b3d076a1ba0a6/client/site_tests/desktopui_MusLogin/desktopui_MusLogin.py
[modify] https://crrev.com/242f6f8e51efc5df85dc800a590b3d076a1ba0a6/client/site_tests/desktopui_MusLogin/control

Labels: -Proj-Mustash-Mus-GPU
Cleaning up old Proj-Mustash labels.

Sign in to add a comment