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

Issue 922308 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jan 18
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 1
Type: Bug

Blocked on:
issue 921159



Sign in to add a comment

Check failed: !is_bound() for blink.mojom.SurfaceEmbedder on Mac FYI GPU ASAN Release

Project Member Reported by cwallez@chromium.org, Jan 16

Issue description

A number of tests are failing consistently on Mac FYI GPU ASAN Release with the following FATAL error: in https://chromium-swarm.appspot.com/task?id=4268b84927575b10&refresh=10&show_raw=1
[2209:775:0114/210705.447969:FATAL:binding_state.cc(96)] Check failed: !is_bound(). Attempting to bind interface that is already bound: blink.mojom.SurfaceEmbedder

The first failing build is https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Mac%20FYI%20GPU%20ASAN%20Release/3836 and has a small regression range.

oksamyt@ tentatively assigning to you since you fixed a similar issue recently: https://bugs.chromium.org/p/chromium/issues/detail?id=921159
+CC alexmos@ https://chromium-review.googlesource.com/c/1377616 since it seems related bu apparently isn't?
+CC rockot@ because this is a mojo check.
 
Blockedon: 921159
Components: Internals>Core
Cc: kylec...@chromium.org samans@chromium.org
I think my https://chromium-review.googlesource.com/c/1377616 is not likely to be related, since it's adding functionality that isn't yet triggered by any code outside of tests.  It also doesn't touch mojo at all.  Though looking at the regression range, I don't see any obvious culprits either.  +kylechar@, +samans@ for SurfaceEmbedder and EmbeddedFrameSinkClient knowledge.
There was a general issue with many of the Mac builder bots (https://bugs.chromium.org/p/chromium/issues/detail?id=922069) which may be related. This bot has been clobbered; we'll see if this cleans up at least part of the issue.

Comment 4 by cwallez@chromium.org, Jan 16 (6 days ago)

The clobber didn't seem to help :(

Comment 5 by samans@chromium.org, Jan 16 (6 days ago)

Something is making the gpu process more unstable which could be worth investigating. However, this also indicates a bug in SurfaceLayerBridge that I will fix.

Comment 6 by oksamyt@chromium.org, Jan 16 (6 days ago)

The stack trace is different between  https://crbug.com/921159  and this issue. Also, the change causing  https://crbug.com/921159  has been reverted as of r622615, and the current issue is still present in later revisions.

Comment 7 by senorblanco@chromium.org, Jan 16 (6 days ago)

FYI, the bot went green in https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Mac%20FYI%20GPU%20ASAN%20Release/3855. I don't see any obvious reason why, though.
Project Member

Comment 8 by bugdroid1@chromium.org, Jan 18 (4 days ago)

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

commit 96ca87a926f3e05513c589fe3e19e26b08f275b4
Author: Saman Sami <samans@chromium.org>
Date: Fri Jan 18 21:24:40 2019

Fix DCHECK after context loss in SurfaceLayerBridge

The child will recreate its CompositorFrameSink after context loss.
Since the SurfaceEmbedder request is also a parameter of
CreateCompositorFrameSink, it will reconnect as well even though the
previous connection is still there. I also noticed that
CreateSimpleCompositorFrameSink does not take a SurfaceEmbedder request.
I think the best course of action is to create a separate method for
connecting to the embedder, so that we won't have to recreate it when
context is lost, and the same method can be used when
CreateSimpleCompositorFrameSink is used instead of
CreateCompositorFrameSink.

Bug:  922308 
Change-Id: I32d9ff3b74c56f4bdd2ad05489fa4d84f0663bc7
Reviewed-on: https://chromium-review.googlesource.com/c/1415470
Commit-Queue: Saman Sami <samans@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: kylechar <kylechar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#624287}
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/content/browser/renderer_host/embedded_frame_sink_impl.cc
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/content/browser/renderer_host/embedded_frame_sink_impl.h
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/content/browser/renderer_host/embedded_frame_sink_provider_impl.cc
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/content/browser/renderer_host/embedded_frame_sink_provider_impl.h
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/content/browser/renderer_host/embedded_frame_sink_provider_impl_unittest.cc
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/third_party/blink/public/platform/modules/frame_sinks/embedded_frame_sink.mojom
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/third_party/blink/renderer/platform/graphics/canvas_resource_dispatcher.cc
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/third_party/blink/renderer/platform/graphics/test/mock_compositor_frame_sink.h
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/third_party/blink/renderer/platform/graphics/test/mock_embedded_frame_sink_provider.h
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/third_party/blink/renderer/platform/graphics/video_frame_submitter.cc
[modify] https://crrev.com/96ca87a926f3e05513c589fe3e19e26b08f275b4/third_party/blink/renderer/platform/graphics/video_frame_submitter_test.cc

Comment 9 by samans@chromium.org, Jan 18 (4 days ago)

Status: Fixed (was: Assigned)

Sign in to add a comment