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

Issue 711544 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Very spamy error in surface_manager.cc

Project Member Reported by rjkroege@chromium.org, Apr 14 2017

Issue description

Tests of  mash_browser_tests in linux_chromium_chromeos_ozone_rel_ng generate enormous amounts of spam error in surface_manager.cc like this:

[0413/210143.676917:ERROR:surface_manager.cc(325)] No surface in map for SurfaceId(FrameSinkId(7405580, 0), LocalSurfaceId(1, (1C23DEEE340732CC756EDDE9394991DB)lu))

Either this is really an error and the tests or should fail or it needs to be silenced.

fsamuel@ please assign appropriately
 
Cc: rjkroege@chromium.org staraz@chromium.org kylec...@chromium.org sadrul@chromium.org samans@chromium.org
I'll take a look tomorrow. If this turns out to be spam then maybe we should simply mock out the display compositor in some of these tests?

Additionally, this SurfaceId reporting is currently not very debug friendly. I've filed a couple of bugs to make SurfaceId spew more debug friendly.
I think [mash_]browser_tests are supposed to be the real deal so we shouldn't have mocks in them. It's likely a real bug.

I wonder what process those log messages are coming from? There should only be a SurfaceManager instance being used in service:ui, but there could still be one in service:content_browser?
It's coming from service:ui. This line in surface_manager.cc is what I think it causing it.

https://cs.chromium.org/chromium/src/cc/surfaces/surface_manager.cc?sq=package:chromium&dr&l=324

That check was removed a month or two ago and readded recently. Something tries to add a surface reference before the surface exists but the reference gets dropped. This ends up breaking other lifetime assumptions and surfaces end up garbage collected early?
Owner: kylec...@chromium.org
Status: Started (was: Assigned)
Project Member

Comment 5 by bugdroid1@chromium.org, Apr 19 2017

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

commit 8761c218a237d2bd6ea05547ad5e578de0a9a855
Author: kylechar <kylechar@chromium.org>
Date: Wed Apr 19 21:54:07 2017

Fix SurfaceIds in mus with surface sync off.

WindowPortMus was sending SurfaceIds (a) too early and (b) that weren't
the right SurfaceId causing lots of log spam with mus and surface sync
turned off.

BUG= 711544 

Review-Url: https://codereview.chromium.org/2831763002
Cr-Commit-Position: refs/heads/master@{#465767}

[modify] https://crrev.com/8761c218a237d2bd6ea05547ad5e578de0a9a855/ui/aura/mus/window_port_mus.cc

Status: Fixed (was: Started)
The check that child SurfaceId exists wasn't actually the problem. SurfaceIds were being propagated early and the surface was being embedded before it existed with surface sync turned off.

Sign in to add a comment