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

Issue 821940 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Mar 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 1
Type: Bug-Regression

Blocking:
issue 826518



Sign in to add a comment

Regression: Chrome without an open window and in background isn't idle when an Extension (e.g. Adblock) is installed

Project Member Reported by meh...@chromium.org, Mar 14 2018

Issue description

Chrome Version: Canary 67.0.3370.0
OS: macOS 10.12.6

What steps will reproduce the problem?
(1) Install Adblock https://chrome.google.com/webstore/detail/adblock/gighmmpiobklfepjocnamgkkbiglidom
(2) Close all open windows
(3) Bring the Activity.app to the foreground
(4) Take a look at the Chrome Process in the Activity.app

What is the expected result?
The Chrome Process should be immediately idle at 0-1%

What happens instead?
The Chrome Process stays at 5% approx. one minute long, then it goes down to 0-1%.

Please use labels and text to provide additional information.
This is a regression. It works fine in an older Chromium Snapshot. I'll bisect the regression range.
 

Comment 1 by meh...@chromium.org, Mar 14 2018

Labels: -Needs-Bisect
Okay I did a manual bisect and this is the regression range:

https://chromium.googlesource.com/chromium/src/+log/5cb0339fb2376e0096f41459e46ce41b51d66ac4..900dd0f1b5215ce5146c08f71b21894065f7efe7

sdy@: Any idea which CL in this range could have cause this issue?

Thanks in advance.

Comment 2 by sdy@chromium.org, Mar 14 2018

Components: -Platform>Extensions Internals>Compositing
Owner: fsam...@chromium.org
Status: Assigned (was: Untriaged)
900dd0f1b5215ce5146c08f71b21894065f7efe7 definitely looks the most plausible. I see viz show up in stack traces a bunch. fsamuel@, what do you think?
You said you see viz show up in stack traces. Do you have any sample stack traces?
I'm definitely able to repro this locally on 67.0.3370.0. I am also able to repro this tip fo tree. I've tried with and without surface synchronization. Repros..
Labels: M-66
Project Member

Comment 6 by bugdroid1@chromium.org, Mar 15 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cfb855831a545f535565625209fe437017e05525

commit cfb855831a545f535565625209fe437017e05525
Author: Fady Samuel <fsamuel@chromium.org>
Date: Thu Mar 15 23:30:17 2018

Display Scheduler: Don't request BeginFrames while waiting for a root surface

When the root surface changes, we cannot draw to the display until a surface
activates. This CL stops draws (and BeginFrames) until activation. If a root surface is never
submitted then the display will not listen for BeginFrames.

Bug:  821940 
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel
Change-Id: I749c0ca8e85a3dbc7eccaa0799add81afb15beb9
Reviewed-on: https://chromium-review.googlesource.com/964595
Reviewed-by: Eric Seckler <eseckler@chromium.org>
Commit-Queue: Fady Samuel <fsamuel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543548}
[modify] https://crrev.com/cfb855831a545f535565625209fe437017e05525/components/viz/service/display/display_scheduler.cc
[modify] https://crrev.com/cfb855831a545f535565625209fe437017e05525/components/viz/service/display/display_scheduler_unittest.cc

Labels: Merge-Request-66
I'd like to merge this back into M66 by around Monday in time for the next M66 beta build.
Have you confirmed the fix in Canary?

Comment 9 by meh...@chromium.org, Mar 16 2018

For me, from the reporter-view, this looks fixed in latest Canary Version 67.0.3372.0 on macOS 10.12.6.

Thank you fsamuel@ for the quick fix!!!
Labels: -Merge-Request-66 Merge-Approved-66
Approving merge for 66. Branch:3359
Project Member

Comment 11 by bugdroid1@chromium.org, Mar 19 2018

Labels: -merge-approved-66 merge-merged-3359
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8adbb60e9662cc609447c691137aa88c38f71b8f

commit 8adbb60e9662cc609447c691137aa88c38f71b8f
Author: Fady Samuel <fsamuel@chromium.org>
Date: Mon Mar 19 15:44:53 2018

Display Scheduler: Don't request BeginFrames while waiting for a root surface

When the root surface changes, we cannot draw to the display until a surface
activates. This CL stops draws (and BeginFrames) until activation. If a root surface is never
submitted then the display will not listen for BeginFrames.

Bug:  821940 
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel
Change-Id: I749c0ca8e85a3dbc7eccaa0799add81afb15beb9
Reviewed-on: https://chromium-review.googlesource.com/964595
Reviewed-by: Eric Seckler <eseckler@chromium.org>
Commit-Queue: Fady Samuel <fsamuel@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#543548}(cherry picked from commit cfb855831a545f535565625209fe437017e05525)
Reviewed-on: https://chromium-review.googlesource.com/968901
Reviewed-by: Fady Samuel <fsamuel@chromium.org>
Cr-Commit-Position: refs/branch-heads/3359@{#304}
Cr-Branched-From: 66afc5e5d10127546cc4b98b9117aff588b5e66b-refs/heads/master@{#540276}
[modify] https://crrev.com/8adbb60e9662cc609447c691137aa88c38f71b8f/components/viz/service/display/display_scheduler.cc
[modify] https://crrev.com/8adbb60e9662cc609447c691137aa88c38f71b8f/components/viz/service/display/display_scheduler_unittest.cc

This should be in the next M66 beta. I'll follow up when we push out the new beta this week.
Status: Fixed (was: Assigned)
The current beta 66.0.3359.45 contains this fix. I'm marking this as FIXED.

Comment 14 by kbr@chromium.org, Mar 27 2018

Blocking: 826518

Sign in to add a comment