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

Issue 751849 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug



Sign in to add a comment

Flaky DCHECK in media::DecoderStream::DecodeInternal during WebglConformance_conformance_extensions_oes_texture_half_float_with_video webgl_conformance_d3d11_passthrough_tests on Win7 Debug (NVIDIA)

Project Member Reported by ynovikov@chromium.org, Aug 2 2017

Issue description

https://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Debug%20%28NVIDIA%29/builds/21258
https://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Debug%20%28NVIDIA%29/builds/21241
https://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Debug%20%28NVIDIA%29/builds/21229
https://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Debug%20%28NVIDIA%29/builds/21168

[3904:1576:0801/071104.751:INFO:gpu_video_decode_accelerator_factory.cc(188)] Initializing DXVA HW decoder for windows.
[468:2396:0801/071104.751:ERROR:audio_manager_win.cc(410)] GetPreferredAudioParameters failed: 88890004
[468:2396:0801/071104.751:ERROR:audio_manager_base.cc(275)] Invalid audio output parameters received; using fake audio path. Channels: 0, Sample Rate: 0, Bits Per Sample: 0, Frames Per Buffer: 0
[3904:1576:0801/071104.800:INFO:gpu_video_decode_accelerator_factory.cc(188)] Initializing DXVA HW decoder for windows.
[3904:1576:0801/071104.833:ERROR:gpu_video_decode_accelerator.cc(440)] Failed to find texture id 6
[452:3640:0801/071104.834:ERROR:gpu_video_decoder.cc(895)] VDA Error: 2
[3904:1576:0801/071104.871:ERROR:gpu_video_decode_accelerator.cc(440)] Failed to find texture id 10
[452:3640:0801/071104.873:ERROR:gpu_video_decoder.cc(895)] VDA Error: 2
[452:3640:0801/071104.903:FATAL:decoder_stream.cc(378)] Check failed: pending_decode_requests_ < GetMaxDecodeRequests() (1 vs. 1)
Backtrace:
	base::debug::StackTrace::StackTrace [0x100E2A95+101]
	base::debug::StackTrace::StackTrace [0x100E1CC3+35]
	logging::LogMessage::~LogMessage [0x10160015+149]
	media::DecoderStream<2>::DecodeInternal [0x07E5E509+1161]
	media::DecoderStream<2>::Decode [0x07E5DBA4+612]
	media::DecoderStream<2>::OnBufferReady [0x07E627B3+4515]
	base::internal::FunctorTraits<void (__thiscall media::DecoderStream<2>::*)(enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> const &),void>::Invoke<base::WeakPtr<media::DecoderStream<2> > const &,enum media::DemuxerStream::Status,scope [0x07E81B11+97]
	base::internal::InvokeHelper<1,void>::MakeItSo<void (__thiscall media::DecoderStream<2>::*const &)(enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> const &),base::WeakPtr<media::DecoderStream<2> > const &,enum media::DemuxerStream::St [0x07E81A4C+156]
	base::internal::Invoker<base::internal::BindState<void (__thiscall media::DecoderStream<2>::*)(enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> const &),base::WeakPtr<media::DecoderStream<2> > >,void __cdecl(enum media::DemuxerStream: [0x07E81982+130]
	base::internal::Invoker<base::internal::BindState<void (__thiscall media::DecoderStream<2>::*)(enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> const &),base::WeakPtr<media::DecoderStream<2> > >,void __cdecl(enum media::DemuxerStream: [0x07E8181E+110]
	base::Callback<void __cdecl(enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> const &),1,1>::Run [0x07DEAD79+137]
	base::internal::FunctorTraits<base::Callback<void __cdecl(enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> const &),1,1>,void>::Invoke<base::Callback<void __cdecl(enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> c [0x07E1C265+341]
	base::internal::InvokeHelper<0,void>::MakeItSo<base::Callback<void __cdecl(enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> const &),1,1>,enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> > [0x07E1BFE6+86]
	base::internal::Invoker<base::internal::BindState<base::Callback<void __cdecl(enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> const &),1,1>,enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> >,void __cdecl(void)>:: [0x07E1BF3F+111]
	base::internal::Invoker<base::internal::BindState<base::Callback<void __cdecl(enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> const &),1,1>,enum media::DemuxerStream::Status,scoped_refptr<media::DecoderBuffer> >,void __cdecl(void)>:: [0x07E1BD62+82]
	base::Callback<void __cdecl(void),0,0>::Run [0x1004D3DE+78]
	base::debug::TaskAnnotator::RunTask [0x100E8A32+914]
	base::MessageLoop::RunTask [0x101ABF53+947]
	base::MessageLoop::DeferOrRunPendingTask [0x101AC903+67]
	base::MessageLoop::DoWork [0x101ACDDD+413]
	base::MessagePumpDefault::Run [0x101BD10E+254]
	base::MessageLoop::Run [0x101AB7EA+266]
	base::RunLoop::Run [0x102C6474+292]
	base::Thread::Run [0x103C8F98+424]
	base::Thread::ThreadMain [0x103C9ADB+1419]
	base::PlatformThread::GetCurrentThreadPriority [0x1038D426+1158]
	BaseThreadInitThunk [0x753C336A+18]
	RtlInitializeExceptionChain [0x77709902+99]
	RtlInitializeExceptionChain [0x777098D5+54]

Going to mark the test Flaky.
 
Cc: jbau...@chromium.org
Owner: sande...@chromium.org
Status: Assigned (was: Untriaged)
Over to Dan for investigation. Might be something wonky in the error case.
Haven't been many changes to this code recently I thought, so it'll be interesting to see when this started happening.
Yes, the fatal failure is caused directly by the error handling for the texture error.

The texture error is shocking though, it implies that the texture (client) IDs given to us via the AssignPictureBuffers() IPC are not in the texture manager.
Cc: geoffl...@chromium.org
Oh, I recall Geoff saying something about wrong IDs with passthrough command buffer.
Project Member

Comment 5 by bugdroid1@chromium.org, Aug 3 2017

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

commit e9a6feb4302699992aca014c54d69731d02a528e
Author: Yuly Novikov <ynovikov@chromium.org>
Date: Thu Aug 03 03:39:17 2017

Mark a WebGL test Flaky

conformance/extensions/oes-texture-half-float-with-video.html
on Win7 Debug NVIDIA D3D11 passthrough

BUG=751849
TBR=kbr@chromium.org

Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: Ieb623f457fca5937b8c82943f60ee87f7353febb
Reviewed-on: https://chromium-review.googlesource.com/599451
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Cr-Commit-Position: refs/heads/master@{#491636}
[modify] https://crrev.com/e9a6feb4302699992aca014c54d69731d02a528e/content/test/gpu/gpu_tests/webgl_conformance_expectations.py

Falling back to the software decode paths is expected for tests using the passthrough command buffer right now.  Working on updating gpu_video_decode_accelerator to not depend on the TextureManager for looking up service ids.
Owner: geoffl...@chromium.org
Seems like there's also a bug on our side in that the error is not clear? Dan, can you elaborate on what we need to fix in DecoderStream to make these errors clearer?
This test may be working now.  I will try to lift the supression.

Sign in to add a comment