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

Issue 871755 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Aug 10
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug



Sign in to add a comment

Android OOP-D: Context Lost Test Failures

Project Member Reported by ericrk@chromium.org, Aug 7

Issue description

The following two context lost tests are failing on the bots:
gpu_tests.context_lost_integration_test.ContextLostIntegrationTest.ContextLost_WebGLBlockedAfterJSNavigation
* gpu_tests.context_lost_integration_test.ContextLostIntegrationTest.ContextLost_WebGLUnblockedAfterUserInitiatedReload

We get the following error in these cases:
[FATAL:begin_frame_source.cc(361)] Check failed: (args.source_id != last_args.source_id) || (args.sequence_number > last_args.sequence_number). current {"type":"BeginFrameArgs","subtype":"NORMAL","source_id":2,"sequence_number":1,"frame_time_us":2569142555.0,"deadline_us":2569159221.0,"interval_us":16666.0,"on_critical_path":true,"animate_only":false}, last {"type":"BeginFrameArgs","subtype":"MISSED","source_id":2,"sequence_number":81,"frame_time_us":2568478531.0,"deadline_us":2568495197.0,"interval_us":16666.0,"on_critical_path":true,"animate_only":false}

So somehow sequence number isn't happening in the right order.
 
I vaguely recall Kyle fixing a similar bug with OOP-D Windows. Why is this any different?
Right, I did fix this on Windows. I made BeginFrameSource::source_id be a 32bit id + 32 bit restart_id. ExternalBeginFrameSourceAndroid/ExternalBeginFrameSource doesn't have |restart_id| plumbed through it yet. Basically it just needs to to this:

https://cs.chromium.org/chromium/src/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc?l=56&rcl=ada5d866fd09636988a3843310f44c81a8025bad
Owner: kylec...@chromium.org
Status: Assigned (was: Available)
 Issue 871743  has been merged into this issue.
Project Member

Comment 6 by bugdroid1@chromium.org, Aug 10

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

commit 3328faef08c9ec0f44eabce16cb106c941010246
Author: kylechar <kylechar@chromium.org>
Date: Fri Aug 10 00:04:24 2018

Plumb |restart_id| through ExternalBeginFrameSource.

This is used to ensure that ExternalBeginFrameSources have a unique
|source_id| after the GPU process is restarted.

Bug:  871755 
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel
Change-Id: Ic5d6066fa2bcdee3c796f9f56967ffcd51e230f1
Reviewed-on: https://chromium-review.googlesource.com/1165888
Reviewed-by: ccameron <ccameron@chromium.org>
Reviewed-by: Saman Sami <samans@chromium.org>
Commit-Queue: kylechar <kylechar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#581967}
[modify] https://crrev.com/3328faef08c9ec0f44eabce16cb106c941010246/components/viz/common/frame_sinks/begin_frame_source.cc
[modify] https://crrev.com/3328faef08c9ec0f44eabce16cb106c941010246/components/viz/common/frame_sinks/begin_frame_source.h
[modify] https://crrev.com/3328faef08c9ec0f44eabce16cb106c941010246/components/viz/common/frame_sinks/begin_frame_source_unittest.cc
[modify] https://crrev.com/3328faef08c9ec0f44eabce16cb106c941010246/components/viz/service/frame_sinks/external_begin_frame_source_android.cc
[modify] https://crrev.com/3328faef08c9ec0f44eabce16cb106c941010246/components/viz/service/frame_sinks/external_begin_frame_source_android.h
[modify] https://crrev.com/3328faef08c9ec0f44eabce16cb106c941010246/components/viz/service/frame_sinks/external_begin_frame_source_android_unittest.cc
[modify] https://crrev.com/3328faef08c9ec0f44eabce16cb106c941010246/components/viz/service/frame_sinks/external_begin_frame_source_mojo.cc
[modify] https://crrev.com/3328faef08c9ec0f44eabce16cb106c941010246/components/viz/service/frame_sinks/external_begin_frame_source_mojo.h
[modify] https://crrev.com/3328faef08c9ec0f44eabce16cb106c941010246/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
[modify] https://crrev.com/3328faef08c9ec0f44eabce16cb106c941010246/content/browser/compositor/gpu_process_transport_factory.cc

Status: Fixed (was: Assigned)

Sign in to add a comment