New issue
Advanced search Search tips

Issue 864458 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jul 19
Cc:
Components:
EstimatedDays: ----
NextAction: 2018-07-31
OS: Fuchsia
Pri: 1
Type: Bug



Sign in to add a comment

VpxVideoDecoderTest.MemoryPoolAllowsMultipleDisplay flaked on Fuchsia/x64 FYI bot

Project Member Reported by w...@chromium.org, Jul 17

Issue description

In build https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/fuchsia-fyi-arm64-rel/306 this test failed with:

[ RUN      ] VpxVideoDecoderTest.MemoryPoolAllowsMultipleDisplay
../../media/filters/vpx_video_decoder_unittest.cc:336: Failure
Expected equality of these values:
  last_frame->data(VideoFrame::kYPlane)
    Which is: 0x6ecba96aa820
  dupe_frame->data(VideoFrame::kYPlane)
    Which is: 0x6e88cc4debe0
Stack trace:
bt#00: pc 0xff6e613fdf10 (app:/pkg/bin/app,0x9bdf10)
bt#01: pc 0xff6e612c8b7c (app:/pkg/bin/app,0x888b7c)
bt#02: end
../../media/filters/vpx_video_decoder_unittest.cc:338: Failure
Expected equality of these values:
  last_frame->data(VideoFrame::kUPlane)
    Which is: 0x6ecba9720510
  dupe_frame->data(VideoFrame::kUPlane)
    Which is: 0x6e88cc5548d0
Stack trace:
bt#00: pc 0xff6e613fdf10 (app:/pkg/bin/app,0x9bdf10)
bt#01: pc 0xff6e612c8cec (app:/pkg/bin/app,0x888cec)
bt#02: end
../../media/filters/vpx_video_decoder_unittest.cc:340: Failure
Expected equality of these values:
  last_frame->data(VideoFrame::kVPlane)
    Which is: 0x6ecba973f210
  dupe_frame->data(VideoFrame::kVPlane)
    Which is: 0x6e88cc5735d0
Stack trace:
bt#00: pc 0xff6e613fdf10 (app:/pkg/bin/app,0x9bdf10)
bt#01: pc 0xff6e612c8e5c (app:/pkg/bin/app,0x888e5c)
bt#02: end
[  FAILED  ] VpxVideoDecoderTest.MemoryPoolAllowsMultipleDisplay (939 ms)

These are checks made only on non-Android platforms, due to Android apparently returning one fewer frames to the other platforms.  Since there is no EXPECT/ASSERT on the number of frames, in the !Android block, it's not immediately obvious whether we're seeing the same issue on Fuchsia.

Also, given that this was a one-off flake, it suggests that the difference in frame-count may be timing specific, e.g. if work were being performed asynchronously without the necessary synchronization in the test.
 
Cc: jrumm...@chromium.org
+jrummell who just modified are allocator here. Though I don't think this would have passed the old path either.
Project Member

Comment 2 by bugdroid1@chromium.org, Jul 17

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

commit d74f01b7582589eb9b2607b8881d1ba804792c48
Author: Wez <wez@chromium.org>
Date: Tue Jul 17 18:08:35 2018

Add frame-count assertion to VpxVideoDecoderTest to diagnose flakes.

Bug:  864458 
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: Ia2f18a1fc92a35d0a09cde3ad4f42e4c2e7936a4
Reviewed-on: https://chromium-review.googlesource.com/1140362
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Wez <wez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#575718}
[modify] https://crrev.com/d74f01b7582589eb9b2607b8881d1ba804792c48/media/filters/vpx_video_decoder_unittest.cc

I checked older builds. This test failed on build 200, which used revision {#574073}. The change referenced in #1 ( issue 817341 ) was {#574422}. So changing the allocator doesn't appear to have caused this issue.
Labels: -Pri-2 -M-69 Pri-3
Owner: ----
Status: Available (was: Assigned)
Marking this Available for now; if/when we see that ASSERT_EQ(), or the expectations, fire, we'll at least know whether it's a # of frames issue, or something else.
NextAction: 2018-07-31
Labels: -Pri-3 M-69 Pri-1
Owner: w...@chromium.org
Status: Assigned (was: Available)
This test now fails, 100% of the time, due to having only 25 frames, rather than 26, or the Fuchsia/ARM64/FYI bot (see https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/fuchsia-fyi-arm64-rel/340).

We do _not_ see this failure on the Fuchsia/x64/FYI bot - might this actually be an ARM vs x86 issue, something subtle in the architecture-specific assembly?
Yeah seems ARM vs X86 related. I'm fine with changing the OS_ANDROID to ARCH_ARM in the workaround.
Status: Started (was: Assigned)
Re #7: Looking at the test more carefully, it doesn't make sense to even run it on ARM, since it is about testing release of two frames that share the same underlying buffers, but one of the two frames that would share buffers is the final one, which is missing on ARM.

=> Going to #ifdef out this test on ARM CPUs.  Might be worth providing a different sample to decode, that has duplicate frame(s) earlier on in the stream.
Project Member

Comment 9 by bugdroid1@chromium.org, Jul 19

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

commit b355adc86e9d4635a3f1a23567035f96bd39d428
Author: Wez <wez@chromium.org>
Date: Thu Jul 19 22:35:27 2018

Don't run VpxVideoDecoderTest.MemoryPoolAllowsMultipleDisplay on ARM.

On ARM the video decode returns only 25 frames, rather than the
expected 26. Since the test relies on the 24th and 26th frames being
duplicates of one another, there is no point running it without the
final frame.

Bug:  864458 
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: I0a6e23d4155d543f36f97fa60f06c8764efaadf2
Reviewed-on: https://chromium-review.googlesource.com/1143137
Reviewed-by: John Rummell <jrummell@chromium.org>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Wez <wez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#576668}
[modify] https://crrev.com/b355adc86e9d4635a3f1a23567035f96bd39d428/media/filters/vpx_video_decoder_unittest.cc

Status: Fixed (was: Started)
The NextAction date has arrived: 2018-07-31

Sign in to add a comment