Closed
Bug 989375
Opened 11 years ago
Closed 11 years ago
[1.4] FishIEtank benchmark not functional (regression)
Categories
(Core :: Graphics, defect, P1)
Tracking
()
People
(Reporter: mvikram, Assigned: snorp)
References
()
Details
(Keywords: perf, regression, Whiteboard: [caf priority: p2][c=benchmark p= s= u=1.4] [CR 640377])
Attachments
(2 files)
(deleted),
text/plain
|
Details | |
(deleted),
patch
|
gw280
:
review+
|
Details | Diff | Splinter Review |
Since the following FFOS build, the MSFishieTank benchmark is not functional (this worked in previous builds).
Gecko:
a8dae518e0d19948ab348a561fdcced7e3eb9883
Gaia:
8c9191df3c107df4073f3ca63816a1d36c51af5d
STR:
Launch the browser to the following URL:
http://ie.microsoft.com/testdrive/Performance/FishIETank/Default.html
Results:
Animation is very sluggish with ~0 FPS.
Reporter | ||
Updated•11 years ago
|
blocking-b2g: --- → 1.4?
Updated•11 years ago
|
blocking-b2g: 1.4? → 1.4+
Keywords: regression,
regressionwindow-wanted
Comment 1•11 years ago
|
||
Before we do a window here, let's do the following:
1. Get a logcat
2. Confirm this doesn't reproduce on 1.3
Keywords: regressionwindow-wanted → qawanted
Comment 2•11 years ago
|
||
We probably should have waiting blocking on this - we don't really have a clear owner of this bug until we diagnose the cause with a logcat.
Over to General until we figure out the QA Request.
Component: Gaia::Browser → General
Comment 3•11 years ago
|
||
I tried to access the URL and catched an assertion in gdb:
0xb48496ac in mozilla::AtomicRefCountedWithFinalize<mozilla::layers::TextureHost>::Release (this=0xae9ce644)
at ../../dist/include/mozilla/layers/AtomicRefCountedWithFinalize.h:37
37 MOZ_ASSERT(mRecycleCallback == nullptr);
(gdb) bt
#0 0xb48496ac in mozilla::AtomicRefCountedWithFinalize<mozilla::layers::TextureHost>::Release (this=0xae9ce644)
at ../../dist/include/mozilla/layers/AtomicRefCountedWithFinalize.h:37
#1 0xb484ced2 in mozilla::RefPtr<mozilla::layers::TextureHost>::~RefPtr (this=0xaedd6b40, __in_chrg=<optimized out>)
at ../../dist/include/mozilla/RefPtr.h:224
#2 0xb4851eca in mozilla::layers::TextureParent::~TextureParent (this=0xaedd6b20, __in_chrg=<optimized out>)
at ../../../gfx/layers/composite/TextureHost.cpp:747
#3 0xb4851ee4 in mozilla::layers::TextureParent::~TextureParent (this=0xaedd6b20, __in_chrg=<optimized out>)
at ../../../gfx/layers/composite/TextureHost.cpp:747
#4 0xb4851476 in mozilla::layers::TextureHost::DestroyIPDLActor (actor=<optimized out>)
at ../../../gfx/layers/composite/TextureHost.cpp:94
#5 0xb4625d90 in mozilla::layers::PLayerTransactionParent::RemoveManagee (this=0xad71f3c0, aProtocolId=<optimized out>,
aListener=<optimized out>) at PLayerTransactionParent.cpp:181
#6 0xb4672664 in mozilla::layers::PTextureParent::Send__delete__ (actor=0xaedd6b20) at PTextureParent.cpp:72
#7 0xb4672304 in mozilla::layers::PTextureParent::OnMessageReceived (this=0xaedd6b20, __msg=...) at PTextureParent.cpp:219
#8 0xb45bd702 in mozilla::layers::PCompositorParent::OnMessageReceived (this=0xae3d0340, __msg=...) at PCompositorParent.cpp:373
#9 0xb458861c in mozilla::ipc::MessageChannel::DispatchAsyncMessage (this=0xae3d0370, aMsg=...)
at ../../../ipc/glue/MessageChannel.cpp:1142
#10 0xb458b6cc in mozilla::ipc::MessageChannel::OnMaybeDequeueOne (this=0xae3d0370) at ../../../ipc/glue/MessageChannel.cpp:1039
#11 0xb43ac324 in DispatchToMethod<FdWatcher, void (FdWatcher::*)()> (method=
(void (FdWatcher::*)(FdWatcher * const)) 0xb458b639 <mozilla::ipc::MessageChannel::OnMaybeDequeueOne()>, obj=<optimized out>,
arg=<optimized out>) at ../../../ipc/chromium/src/base/tuple.h:383
#12 RunnableMethod<FdWatcher, void (FdWatcher::*)(), Tuple0>::Run (this=<optimized out>) at ../../../ipc/chromium/src/base/task.h:307
#13 0xb4588aa0 in Run (this=<optimized out>) at ../../dist/include/mozilla/ipc/MessageChannel.h:383
#14 mozilla::ipc::MessageChannel::DequeueTask::Run (this=<optimized out>) at ../../dist/include/mozilla/ipc/MessageChannel.h:400
#15 0xb4579fcc in MessageLoop::RunTask (this=0xaf9ffde0, task=0xaedffce0) at ../../../ipc/chromium/src/base/message_loop.cc:344
#16 0xb457a90a in MessageLoop::DeferOrRunPendingTask (this=<optimized out>, pending_task=<optimized out>)
at ../../../ipc/chromium/src/base/message_loop.cc:352
#17 0xb457ba06 in DoWork (this=<optimized out>) at ../../../ipc/chromium/src/base/message_loop.cc:430
#18 MessageLoop::DoWork (this=0xaf9ffde0) at ../../../ipc/chromium/src/base/message_loop.cc:409
#19 0xb457bc1c in base::MessagePumpDefault::Run (this=0xb1377160, delegate=0xaf9ffde0)
Updated•11 years ago
|
Component: General → Graphics: Layers
Product: Firefox OS → Core
Version: unspecified → 30 Branch
Comment 4•11 years ago
|
||
The previous comment seems like a general regression and this stack has nothing todo with this bug.
Updated•11 years ago
|
Keywords: regressionwindow-wanted
Comment 5•11 years ago
|
||
Sorry, just realized Jason removed regression-wanted until we get some other info.
Keywords: regressionwindow-wanted
Updated•11 years ago
|
Component: Graphics: Layers → Performance
Keywords: perf
Product: Core → Firefox OS
Version: 30 Branch → unspecified
Comment 6•11 years ago
|
||
We're probably going to want to get a profile here.
Updated•11 years ago
|
Flags: needinfo?(bgirard)
Updated•11 years ago
|
Whiteboard: [CR 640377]
The issue doesn't reproduce on 1.3
The animation is not sluggish and FPS info is shown between 8-20
added a log file for 1.4
1.3 Environmental Variables:
Device: Buri 1.3 MOZ
BuildID: 20140401004003
Gaia: 24f562fce468fc948ac9e6185e002c23350cb9ee
Gecko: 0adf24a785f2
Version: 28.0
Firmware Version: v1.2-device.cfg
Updated•11 years ago
|
Keywords: regressionwindow-wanted
Comment 8•11 years ago
|
||
I got a real stack now:
[Switching to Thread 1303.1430]
0xb56c2700 in mozilla::MediaDecoderStateMachine::DecodeMetadata (this=0xb3c4ae80) at ../../../content/media/MediaDecoderStateMachine.cpp:1879
1879 MOZ_ASSERT(!(mMediaSeekable && mTransportSeekable) ||
(gdb) bt
#0 0xb56c2700 in mozilla::MediaDecoderStateMachine::DecodeMetadata (this=0xb3c4ae80) at ../../../content/media/MediaDecoderStateMachine.cpp:1879
#1 0xb56c27c4 in mozilla::MediaDecoderStateMachine::CallDecodeMetadata (this=0xb3c4ae80) at ../../../content/media/MediaDecoderStateMachine.cpp:1826
#2 0xb4b556f0 in nsRunnableMethodImpl<tag_nsresult (nsMemoryReporterManager::*)(), void, true>::Run (this=<optimized out>) at ../../dist/include/nsThreadUtils.h:383
#3 0xb56d2418 in mozilla::MediaTaskQueue::Runner::Run (this=0xb21746d0) at ../../../content/media/MediaTaskQueue.cpp:127
#4 0xb4b85582 in nsThreadPool::Run (this=0xb219bca0) at ../../../xpcom/threads/nsThreadPool.cpp:211
#5 0xb4b83952 in ProcessNextEvent (result=0xb3d56e1f, mayWait=true, this=0xb2194500) at ../../../xpcom/threads/nsThread.cpp:694
#6 nsThread::ProcessNextEvent (this=0xb2194500, mayWait=<optimized out>, result=0xb3d56e1f) at ../../../xpcom/threads/nsThread.cpp:618
#7 0xb4b3c5d8 in NS_ProcessNextEvent (thread=0xb2194500, mayWait=<optimized out>) at ../../../xpcom/glue/nsThreadUtils.cpp:263
#8 0xb4d320c4 in mozilla::ipc::MessagePumpForNonMainThreads::Run (this=0xb21a0130, aDelegate=0xb25bffa0) at ../../../ipc/glue/MessagePump.cpp:336
#9 0xb4d1f742 in MessageLoop::RunInternal (this=0xb25bffa0) at ../../../ipc/chromium/src/base/message_loop.cc:226
#10 0xb4d1f75a in RunHandler (this=0xb25bffa0) at ../../../ipc/chromium/src/base/message_loop.cc:219
#11 MessageLoop::Run (this=0xb25bffa0) at ../../../ipc/chromium/src/base/message_loop.cc:193
#12 0xb4b83316 in nsThread::ThreadFunc (arg=0xb2194500) at ../../../xpcom/threads/nsThread.cpp:308
#13 0xb476ca5c in _pt_root (arg=0xb2194580) at ../../../../../nsprpub/pr/src/pthreads/ptthread.c:212
#14 0xb6eb9a5c in __thread_entry (func=0xb476c9b5 <_pt_root>, arg=0xb2194580, tls=0xb3d56f00) at bionic/libc/bionic/pthread_create.cpp:92
#15 0xb6eb9bd8 in pthread_create (thread_out=0xb3d76af4, attr=<optimized out>, start_routine=0x78, arg=0xb2194580) at bionic/libc/bionic/pthread_create.cpp:201
#16 0x00000000 in ?? ()
Component: Performance → Video/Audio
Product: Firefox OS → Core
Comment 9•11 years ago
|
||
Chris and Roc seem to know MediaDecoderStateMachine. Any idea what's going on?
Flags: needinfo?(roc)
Flags: needinfo?(cpearce)
Updated•11 years ago
|
Flags: needinfo?(bgirard)
Comment 10•11 years ago
|
||
In addition to comment 8:
(gdb) p *this
$1 = {mRefCnt = {static isThreadSafe = true,
mValue = {<mozilla::detail::AtomicBaseIncDec<unsigned int, (mozilla::MemoryOrdering)2>> = {<mozilla::detail::AtomicBase<unsigned int, (mozilla::MemoryOrdering)2>> = {
mValue = 2}, <No data fields>}, <No data fields>}}, mDecoder = {mRawPtr = 0xb2d91200}, mState = mozilla::MediaDecoderStateMachine::DECODER_STATE_DECODING_METADATA, mAudioThread = {mRawPtr = 0x0},
mDecodeTaskQueue = {ptr = 0xb219bd60}, mStateMachineThreadPool = {ptr = 0xb2138980}, mTimer = {mRawPtr = 0xb21602e0}, mTimeout = {mValue = 0}, mInRunningStateMachine = {value = false}, mPlayStartTime = {
mValue = 0}, mSyncPointInMediaStream = -1, mSyncPointInDecodedStream = -1, mResetPlayStartTime = false, mPlayDuration = 0, mBufferingStart = {mValue = 0}, mStartTime = 0, mEndTime = -1, mSeekTarget = {
mTime = -1, mType = mozilla::SeekTarget::Invalid}, mFragmentEndTime = -1, mAudioStream = {mRawPtr = 0x0}, mReader = {mRawPtr = 0xb2f8e790}, mPendingWakeDecoder = {mEvent = {mRawPtr = 0x0}},
mCurrentFrameTime = 0, mAudioStartTime = 0, mAudioEndTime = -1, mVideoFrameEndTime = -1, mVolume = 1, mPlaybackRate = 1, mPreservesPitch = true, mBasePosition = 0, mDecodeStartTime = {mValue = 0},
mBufferingWait = 30, mLowDataThresholdUsecs = 5000000, mAmpleVideoFrames = 3, mLowAudioThresholdUsecs = 300000, mAmpleAudioThresholdUsecs = 1000000, mAudioPrerollUsecs = 600000, mVideoPrerollFrames = 1,
mIsAudioPrerolling = 165, mIsVideoPrerolling = 165, mIsAudioDecoding = 165, mIsVideoDecoding = 165, mDispatchedAudioDecodeTask = false, mDispatchedVideoDecodeTask = false, mIsReaderIdle = false,
mSkipToNextKeyFrame = 165, mAudioCaptured = false, mTransportSeekable = true, mMediaSeekable = true, mPositionChangeQueued = false, mAudioCompleted = false, mGotDurationFromMetaData = false,
mDispatchedEventToDecode = false, mStopAudioThread = true, mQuickBuffering = false, mMinimizePreroll = false, mDecodeThreadWaiting = false, mRealTime = false, mEventManager = {mDecoder = 0xb2d91200,
mSamplesPerSecond = -2.87351825e-16, mSignalBuffer = {mRawPtr = 0xb3c1e568}, mSignalBufferLength = 0, mNewSignalBufferLength = 0, mSignalBufferPosition = 0,
mPendingEvents = {<nsTArray_Impl<nsCOMPtr<nsIRunnable>, nsTArrayInfallibleAllocator>> = {<nsTArray_base<nsTArrayInfallibleAllocator, nsTArray_CopyWithMemutils>> = {
mHdr = 0xb6d227cc}, <nsTArray_TypedBase<nsCOMPtr<nsIRunnable>, nsTArray_Impl<nsCOMPtr<nsIRunnable>, nsTArrayInfallibleAllocator> >> = {<nsTArray_SafeElementAtHelper<nsCOMPtr<nsIRunnable>, nsTArray_Impl<nsCOMPtr<nsIRunnable>, nsTArrayInfallibleAllocator> >> = {<nsTArray_SafeElementAtSmartPtrHelper<nsIRunnable, nsTArray_Impl<nsCOMPtr<nsIRunnable>, nsTArrayInfallibleAllocator> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, mReentrantMonitor = {<mozilla::BlockingResourceBase> = {static kResourceTypeName = 0xb6ad9090, mChainPrev = 0x0, mDDEntry = 0xb21744d0,
static sCallOnce = {initialized = 1, inProgress = 1, status = PR_SUCCESS}, static sResourceAcqnChainFrontTPI = 1, static sDeadlockDetector = 0xb3c25160}, mReentrantMonitor = 0xb21388a0,
mEntryCount = 0}, mHasListener = false}, mInfo = {mVideo = {mDisplay = {<mozilla::gfx::BaseSize<int, nsIntSize>> = {width = 0, height = 0}, <No data fields>}, mStereoMode = mozilla::MONO,
mHasVideo = false}, mAudio = {mRate = 44100, mChannels = 2, mHasAudio = true}}, mMetadataManager = {mMetadataQueue = {sentinel = {next = 0xb3c4aff0, prev = 0xb3c4aff0, isSentinel = true}}},
mLastFrameStatus = mozilla::MediaDecoderOwner::NEXT_FRAME_UNINITIALIZED}
Comment 11•11 years ago
|
||
I don't believe this stack either. Testing on desktop I don't see the page load an audio or video resource, and I don't see anything like that in the page source.
Comment 12•11 years ago
|
||
(In reply to Ralph Giles (:rillian) from comment #11)
> I don't believe this stack either. Testing on desktop I don't see the page
> load an audio or video resource, and I don't see anything like that in the
> page source.
Argh I googled for fishtank and IE and went to http://ie.microsoft.com/testdrive/performance/fishbowl/
Is this a stack for yet another bug?
Comment 13•11 years ago
|
||
Ignore my stacks above. They show another bug.
For the URL in the Description I get
Program received signal SIGSEGV, Segmentation fault.
mozilla::gfx::GetCairoSurfaceForSourceSurface (aSurface=0x0, aExistingOnly=true) at ../../../gfx/2d/DrawTargetCairo.cpp:205
205 if (aSurface->GetType() == SurfaceType::CAIRO) {
(gdb) bt
#0 mozilla::gfx::GetCairoSurfaceForSourceSurface (aSurface=0x0, aExistingOnly=true) at ../../../gfx/2d/DrawTargetCairo.cpp:205
#1 0xb4f0461c in mozilla::gfx::AutoClearDeviceOffset::Init (this=0xbe93bbd0, aSurface=<optimized out>) at ../../../gfx/2d/DrawTargetCairo.cpp:280
#2 0xb4f0466e in mozilla::gfx::AutoClearDeviceOffset::AutoClearDeviceOffset (this=0xbe93bbd0, aPattern=...) at ../../../gfx/2d/DrawTargetCairo.cpp:266
#3 0xb4f04de6 in DrawPattern (aPathBoundsClip=false, aDrawType=mozilla::gfx::DrawTargetCairo::DRAW_FILL, aOptions=..., aStrokeOptions=..., aPattern=..., this=0xb19f6880)
at ../../../gfx/2d/DrawTargetCairo.cpp:654
#4 mozilla::gfx::DrawTargetCairo::DrawPattern (this=0xb19f6880, aPattern=..., aStrokeOptions=..., aOptions=..., aDrawType=mozilla::gfx::DrawTargetCairo::DRAW_FILL, aPathBoundsClip=false)
at ../../../gfx/2d/DrawTargetCairo.cpp:644
#5 0xb4f0513e in mozilla::gfx::DrawTargetCairo::FillRect (this=0xb19f6880, aRect=<optimized out>, aPattern=..., aOptions=...) at ../../../gfx/2d/DrawTargetCairo.cpp:710
#6 0xb4f84734 in mozilla::layers::FillRectWithMask (aDT=0xb19f6880, aRect=..., aSurface=0x0, aFilter=<optimized out>, aOptions=..., aMaskLayer=0x0) at ../../../gfx/layers/basic/BasicLayersImpl.cpp:174
#7 0xb4f7f50c in mozilla::layers::BasicCanvasLayer::Paint (this=0xb2f4f560, aDT=0xb19f6880, aMaskLayer=0x0) at ../../../gfx/layers/basic/BasicCanvasLayer.cpp:46
#8 0xb4f832a6 in mozilla::layers::BasicLayerManager::PaintSelfOrChildren (this=0xb215c740, aPaintContext=<optimized out>, aGroupTarget=0xb25f3940) at ../../../gfx/layers/basic/BasicLayerManager.cpp:838
#9 0xb4f835ac in mozilla::layers::BasicLayerManager::PaintLayer (this=0xb215c740, aTarget=0xb25f3940, aLayer=0xb2f4f560, aCallback=<optimized out>, aCallbackData=0xbe93c758, aReadback=0xbe93c0f0)
at ../../../gfx/layers/basic/BasicLayerManager.cpp:964
#10 0xb4f832e6 in mozilla::layers::BasicLayerManager::PaintSelfOrChildren (this=0xb215c740, aPaintContext=..., aGroupTarget=0xb25f3940) at ../../../gfx/layers/basic/BasicLayerManager.cpp:851
#11 0xb4f835ac in mozilla::layers::BasicLayerManager::PaintLayer (this=0xb215c740, aTarget=0xb25f3940, aLayer=0xb19f1000, aCallback=<optimized out>, aCallbackData=0xbe93c758, aReadback=0x0)
at ../../../gfx/layers/basic/BasicLayerManager.cpp:964
#12 0xb4f83db2 in mozilla::layers::BasicLayerManager::EndTransactionInternal (this=0xb215c740, aCallback=
0xb584fe81 <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, mozilla::layers::DrawRegionClip, nsIntRegion const&, void*)>,
aCallbackData=<optimized out>, aFlags=<optimized out>) at ../../../gfx/layers/basic/BasicLayerManager.cpp:627
#13 0xb58844a2 in nsDisplayList::PaintForFrame (this=0xbe93c73c, aBuilder=0xbe93c758, aCtx=<optimized out>, aForFrame=<optimized out>, aFlags=0) at ../../../layout/base/nsDisplayList.cpp:1439
#14 0xb58846c0 in nsDisplayList::PaintRoot (this=0xbe93c73c, aBuilder=0xbe93c758, aCtx=0xb1769e80, aFlags=0) at ../../../layout/base/nsDisplayList.cpp:1280
#15 0xb588e14a in nsLayoutUtils::PaintFrame (aRenderingContext=0xb1769e80, aFrame=0xb212a2b8, aDirtyRegion=<optimized out>, aBackstop=0, aFlags=41) at ../../../layout/base/nsLayoutUtils.cpp:2637
#16 0xb583cba2 in RenderDocument (aThebesContext=0xb25f3940, aBackgroundColor=4294967295, aFlags=<optimized out>, aRect=..., this=0xb2fc5f80) at ../../../layout/base/nsPresShell.cpp:4674
#17 PresShell::RenderDocument (this=0xb2fc5f80, aRect=..., aFlags=<optimized out>, aBackgroundColor=4294967295, aThebesContext=0xb25f3940) at ../../../layout/base/nsPresShell.cpp:4548
#18 0xb55bff90 in mozilla::dom::CanvasRenderingContext2D::DrawWindow (this=0xb19ed800, window=<optimized out>, x=<optimized out>, y=0, w=980, h=1317, bgColor=..., flags=30, error=...)
at ../../../../content/canvas/src/CanvasRenderingContext2D.cpp:3656
#19 0xb5027d48 in drawWindow (args=..., self=0xb19ed800, cx=0xb3cbd240, obj=<optimized out>) at CanvasRenderingContext2DBinding.cpp:4156
#20 mozilla::dom::CanvasRenderingContext2DBinding::drawWindow (cx=0xb3cbd240, obj=<optimized out>, self=0xb19ed800, args=...) at CanvasRenderingContext2DBinding.cpp:4077
#21 0xb51fd718 in mozilla::dom::GenericBindingMethod (cx=0xb3cbd240, argc=<optimized out>, vp=<optimized out>) at ../../../dom/bindings/BindingUtils.cpp:2270
#22 0xb605578a in js::CallJSNative (cx=0xb3cbd240, native=0xb51fd65d <mozilla::dom::GenericBindingMethod(JSContext*, unsigned int, JS::Value*)>, args=...) at ../../../js/src/jscntxtinlines.h:239
#23 0xb6056bf6 in js::Invoke (cx=0xb3cbd240, args=..., construct=js::NO_CONSTRUCT) at ../../../js/src/vm/Interpreter.cpp:476
---Type <return> to continue, or q <return> to quit---
#24 0xb6057f08 in Interpret (cx=0xb3cbd240, state=...) at ../../../js/src/vm/Interpreter.cpp:2620
#25 0xb606199e in js::RunScript (cx=0xb3cbd240, state=...) at ../../../js/src/vm/Interpreter.cpp:423
#26 0xb6056b5c in RunScript (state=..., cx=0xb3cbd240) at ../../../js/src/vm/Interpreter.cpp:390
#27 js::Invoke (cx=0xb3cbd240, args=..., construct=js::NO_CONSTRUCT) at ../../../js/src/vm/Interpreter.cpp:495
#28 0xb60620f4 in js::Invoke (cx=0xb3cbd240, thisv=..., fval=..., argc=<optimized out>, argv=0xbe93db68, rval=...) at ../../../js/src/vm/Interpreter.cpp:532
#29 0xb5f33c10 in JS_CallFunctionValue (cx=0xb3cbd240, obj=<optimized out>, fval=..., args=..., rval=...) at ../../../js/src/jsapi.cpp:4965
#30 0xb52b6838 in nsXPCWrappedJSClass::CallMethod (this=0xb19fc880, wrapper=<optimized out>, methodIndex=<optimized out>, info_=0xb3141b08, nativeParams=0xbe93dc20)
at ../../../../js/xpconnect/src/XPCWrappedJSClass.cpp:1273
#31 0xb52b2ef2 in nsXPCWrappedJS::CallMethod (this=0xb19fba40, methodIndex=<optimized out>, info=0xb3141b08, params=0xbe93dc20) at ../../../../js/xpconnect/src/XPCWrappedJS.cpp:517
#32 0xb4b33d4a in PrepareAndDispatch (self=0xb2163940, methodIndex=<optimized out>, args=0xbe93dccc) at ../../../../../../../xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp:93
#33 0xb4b3343c in SharedStub () from /Volumes/2mac/moz/ib2g/debnexusbuild/dist/bin/libxul.so
#34 0xb4b03e22 in (anonymous namespace)::MessageLoopIdleTask::Run (this=0xb18fa040) at ../../../xpcom/base/nsMessageLoop.cpp:114
#35 0xb4b0378a in (anonymous namespace)::MessageLoopTimerCallback::Notify (this=0xb2163970, aTimer=<optimized out>) at ../../../xpcom/base/nsMessageLoop.cpp:132
#36 0xb4b313fa in nsTimerImpl::Fire (this=0xb18f91f0) at ../../../xpcom/threads/nsTimerImpl.cpp:554
#37 0xb4b31578 in nsTimerEvent::Run (this=0xb2511090) at ../../../xpcom/threads/nsTimerImpl.cpp:635
#38 0xb4b2e952 in ProcessNextEvent (result=0xbe93ddbf, mayWait=false, this=0xb3c2e780) at ../../../xpcom/threads/nsThread.cpp:694
#39 nsThread::ProcessNextEvent (this=0xb3c2e780, mayWait=<optimized out>, result=0xbe93ddbf) at ../../../xpcom/threads/nsThread.cpp:618
#40 0xb4ae75d8 in NS_ProcessNextEvent (thread=0xb3c2e780, mayWait=<optimized out>) at ../../../xpcom/glue/nsThreadUtils.cpp:263
#41 0xb4cdd290 in mozilla::ipc::MessagePump::Run (this=0xb3c01b80, aDelegate=0xbe93df18) at ../../../ipc/glue/MessagePump.cpp:95
#42 0xb4cca742 in MessageLoop::RunInternal (this=0xbe93df18) at ../../../ipc/chromium/src/base/message_loop.cc:226
#43 0xb4cca75a in RunHandler (this=0xbe93df18) at ../../../ipc/chromium/src/base/message_loop.cc:219
#44 MessageLoop::Run (this=0xbe93df18) at ../../../ipc/chromium/src/base/message_loop.cc:193
#45 0xb5266896 in nsBaseAppShell::Run (this=0xb2f3be80) at ../../../widget/xpwidgets/nsBaseAppShell.cpp:164
#46 0xb5b13b5e in XRE_RunAppShell () at ../../../toolkit/xre/nsEmbedFunctions.cpp:679
#47 0xb4cdd3aa in mozilla::ipc::MessagePumpForChildProcess::Run (this=0xb3c01b80, aDelegate=0xbe93df18) at ../../../ipc/glue/MessagePump.cpp:253
#48 0xb4cca742 in MessageLoop::RunInternal (this=0xbe93df18) at ../../../ipc/chromium/src/base/message_loop.cc:226
#49 0xb4cca75a in RunHandler (this=0xbe93df18) at ../../../ipc/chromium/src/base/message_loop.cc:219
#50 MessageLoop::Run (this=0xbe93df18) at ../../../ipc/chromium/src/base/message_loop.cc:193
#51 0xb5b13a42 in XRE_InitChildProcess (aArgc=5, aArgv=<optimized out>, aProcess=<optimized out>) at ../../../toolkit/xre/nsEmbedFunctions.cpp:516
#52 0x00008862 in main (argc=6, argv=0xbe93ea14) at ../../../ipc/app/MozillaRuntimeMain.cpp:149
Comment 14•11 years ago
|
||
Back to milan
Component: Video/Audio → Graphics
Flags: needinfo?(roc)
Flags: needinfo?(milan)
Flags: needinfo?(cpearce)
Comment 15•11 years ago
|
||
I filed bug 991208 for the assertion found in comment 8
Comment 16•11 years ago
|
||
Ok. http://ie.microsoft.com/testdrive/performance/fishbowl/ as least has a media resource for the water sound animation.
Comment 17•11 years ago
|
||
(In reply to Gregor Wagner [:gwagner] from comment #14)
> Back to milan
Yes, Benoit is going to get the profile as soon as possible. If somebody else can get the profile, it will speed things up.
Flags: needinfo?(milan)
Comment 18•11 years ago
|
||
Hm I never saw it working on my buri with an opt build and I always got the 'Well this is embarrassing" page. Milan, should we file another bug with the assertion in comment 13 and focus on the performance here if the site is working for you?
Flags: needinfo?(milan)
Comment 19•11 years ago
|
||
Probably a good idea (another bug). I don't get a crash, but I do get sluggish framerate.
Flags: needinfo?(milan) → needinfo?(bgirard)
Comment 20•11 years ago
|
||
I can reproduce the stack in comment 13. But I suspect we're just hitting a out of memory crash.
Flags: needinfo?(bgirard)
Comment 21•11 years ago
|
||
Doesn't look like out-of-memory:
The problem is that 'SharedSurface_GL* sharedSurf = mGLContext->RequestFrame();' is returning null in UpdateTarget and we never set mSurface and right now we assume that calling UpdateTarget always sets a valid mSurface. Snorp is seeing the same bug.
Assignee | ||
Comment 22•11 years ago
|
||
Attachment #8402894 -
Flags: review?(gwright)
Updated•11 years ago
|
Keywords: regressionwindow-wanted
Comment 23•11 years ago
|
||
attachment 8402894 [details] [diff] [review] fixes the bug for me. Assigning to snorp.
Milan are you still interested in the performance for this testcase? If so I can get a follow up bug.
Assignee: nobody → snorp
Comment 24•11 years ago
|
||
Alright here's a profile of the performance regression:
http://people.mozilla.org/~bgirard/cleopatra/#report=47a3629901040c10630f14be82e4d8b815517c26
Looks like we're copying the image every draw. We shouldn't be copying the image at all.
Assignee | ||
Comment 25•11 years ago
|
||
We should be hitting this path, but we're apparently not: http://dxr.mozilla.org/mozilla-central/source/content/canvas/src/CanvasRenderingContext2D.cpp#1499
Comment 26•11 years ago
|
||
The perf issue is caused by bug 962670. We shouldn't leave this on trunk for very long since it can mask other issues.
Flags: needinfo?(mwu)
Comment 27•11 years ago
|
||
(In reply to Benoit Girard (:BenWa) from comment #26)
> The perf issue is caused by bug 962670. We shouldn't leave this on trunk for
> very long since it can mask other issues.
I think I have a pretty good grip on what's going on here. The canvas has a CanvasImageCache which stores SourceSurfaces. Normally, this would allow us to do the copy just once, and then use the cached copy afterwards. However, the image in this benchmark is 18mb uncompressed. On B2G, the CanvasImageCache has a max size of 10mb, so the image is never cached. Before bug 962670, we also had a cached copy on the surface provided by GetFrame, but this is thrown away now.
I'll put together a fix this week.
Flags: needinfo?(mwu)
Comment 28•11 years ago
|
||
This looks like two bugs we're tracking - it's a bit confusing, as we have the crash (:snorp fixing) and "not caching anymore" (:mwu fixing.) This bug is more for the performance, but we already have a crash fix patch against it, so as long as this gets assigned to :mwu after :snorp's fix lands, I personally don't mind keeping both issues in the same bug.
Updated•11 years ago
|
Status: NEW → ASSIGNED
Priority: -- → P1
Whiteboard: [CR 640377] → [c=benchmark p= s= u=1.4] [CR 640377]
Updated•11 years ago
|
Attachment #8402894 -
Flags: review?(gwright) → review+
Updated•11 years ago
|
Flags: needinfo?(gwright)
Assignee | ||
Comment 30•11 years ago
|
||
Comment 31•11 years ago
|
||
(In reply to Milan Sreckovic [:milan] from comment #28)
> This looks like two bugs we're tracking - it's a bit confusing, as we have
> the crash (:snorp fixing) and "not caching anymore" (:mwu fixing.) This bug
> is more for the performance, but we already have a crash fix patch against
> it, so as long as this gets assigned to :mwu after :snorp's fix lands, I
> personally don't mind keeping both issues in the same bug.
I'll file a new bug for the perf fix - should be less confusing overall.
Comment 32•11 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla31
(In reply to Michael Wu [:mwu] from comment #31)
> (In reply to Milan Sreckovic [:milan] from comment #28)
> > This looks like two bugs we're tracking - it's a bit confusing, as we have
> > the crash (:snorp fixing) and "not caching anymore" (:mwu fixing.) This bug
> > is more for the performance, but we already have a crash fix patch against
> > it, so as long as this gets assigned to :mwu after :snorp's fix lands, I
> > personally don't mind keeping both issues in the same bug.
>
> I'll file a new bug for the perf fix - should be less confusing overall.
Do we have any other bugs other than bug 962670, bug 990217 and bug 993083 for this ?
Flags: needinfo?(mwu)
Comment 34•11 years ago
|
||
status-b2g-v1.4:
--- → fixed
status-b2g-v2.0:
--- → fixed
status-firefox29:
--- → wontfix
status-firefox30:
--- → fixed
status-firefox31:
--- → fixed
Issue is still present in tip of v1.4 gaia/gecko . I can see fishIETank website but animation is shows big stutter and website does not seem to be functional :(
I can upload a video if you want.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Comment 36•11 years ago
|
||
(In reply to Tapas Kumar Kundu from comment #35)
> Issue is still present in tip of v1.4 gaia/gecko . I can see fishIETank
> website but animation is shows big stutter and website does not seem to be
> functional :(
>
> I can upload a video if you want.
There's two issues in this bug. One is a crash and the other is a performance issue. I'll be filing a new bug for the performance issue.
Flags: needinfo?(mwu)
Updated•11 years ago
|
Status: REOPENED → RESOLVED
Closed: 11 years ago → 11 years ago
Resolution: --- → FIXED
Updated•10 years ago
|
Whiteboard: [c=benchmark p= s= u=1.4] [CR 640377] → [caf priority: p2][c=benchmark p= s= u=1.4] [CR 640377]
Updated•10 years ago
|
Flags: in-moztrap?(ychung)
Comment 37•10 years ago
|
||
New test case needs to be added. There is no existing test case.
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Comment 38•10 years ago
|
||
Test case added in moztrap:
https://moztrap.mozilla.org/manage/case/14333/
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
Flags: in-moztrap?(ychung)
Flags: in-moztrap+
You need to log in
before you can comment on or make changes to this bug.
Description
•