All users were logged out of Bugzilla on October 13th, 2018

B2G Assertion failure: Cannot compute with aOther null value, at at ../../dist/include/mozilla/TimeStamp.h:461

RESOLVED FIXED in Firefox 41

Status

RESOLVED FIXED
4 years ago
3 years ago

People

(Reporter: ethlin, Assigned: ethlin)

Tracking

unspecified
2.2 S13 (29may)
ARM
Gonk (Firefox OS)

Firefox Tracking Flags

(firefox41 fixed)

Details

Attachments

(1 attachment)

(Assignee)

Description

4 years ago
After building with B2G_DEBUG=1 for flame-kk, the device cannot boot normally.
GDB messages:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 8506.8555]
0xb3f8c020 in mozilla::TimeStamp::operator- (this=<optimized out>, aOther=...) at ../../dist/include/mozilla/TimeStamp.h:461
461	    MOZ_ASSERT(!aOther.IsNull(), "Cannot compute with aOther null value");
(gdb) bt
#0  0xb3f8c020 in mozilla::TimeStamp::operator- (this=<optimized out>, aOther=...) at ../../dist/include/mozilla/TimeStamp.h:461
#1  0xb4513f22 in mozilla::layers::LayerManagerComposite::RenderDebugOverlay (this=this@entry=0xafa122f0, aBounds=...)
    at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/gfx/layers/composite/LayerManagerComposite.cpp:421
#2  0xb4514b38 in mozilla::layers::LayerManagerComposite::Render (this=this@entry=0xafa122f0)
    at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/gfx/layers/composite/LayerManagerComposite.cpp:765
#3  0xb4514de2 in EndTransaction (aFlags=<optimized out>, this=0xafa122f0, aCallback=<optimized out>, aCallbackData=<optimized out>)
    at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/gfx/layers/composite/LayerManagerComposite.cpp:314
#4  mozilla::layers::LayerManagerComposite::EndTransaction (this=0xafa122f0, aCallback=<optimized out>, aCallbackData=<optimized out>, aFlags=<optimized out>)
    at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/gfx/layers/composite/LayerManagerComposite.cpp:266
#5  0xb4514ec6 in mozilla::layers::LayerManagerComposite::EndEmptyTransaction (this=0xafa122f0,
    aFlags=aFlags@entry=(mozilla::layers::LayerManager::END_NO_IMMEDIATE_REDRAW | mozilla::layers::LayerManager::END_NO_COMPOSITE | mozilla::layers::LayerManager::END_NO_REMOTE_COMPOSITE | unknown: 10648)) at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/gfx/layers/composite/LayerManagerComposite.cpp:261
#6  0xb4517850 in mozilla::layers::CompositorParent::CompositeToTarget (this=0xad1a8000, aTarget=0x0, aRect=<optimized out>)
    at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/gfx/layers/ipc/CompositorParent.cpp:1143
#7  0xb450a210 in mozilla::layers::CompositorVsyncScheduler::Composite (this=0xad01f430, aVsyncTimestamp=...)
    at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/gfx/layers/ipc/CompositorParent.cpp:519
#8  0xb4505c66 in DispatchToMethod<mozilla::layers::CompositorVsyncScheduler, void (mozilla::layers::CompositorVsyncScheduler::*)(mozilla::TimeStamp), mozilla::TimeStamp> (arg=...,
    method=&virtual mozilla::layers::CompositorVsyncScheduler::Composite(mozilla::TimeStamp), obj=<optimized out>)
    at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/tuple.h:393
#9  RunnableMethod<mozilla::layers::CompositorVsyncScheduler, void (mozilla::layers::CompositorVsyncScheduler::*)(mozilla::TimeStamp), Tuple1<mozilla::TimeStamp> >::Run (
    this=<optimized out>) at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/task.h:310
#10 0xb4181460 in MessageLoop::RunTask (this=0xaef01cc0, task=0xade1afd0) at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/message_loop.cc:361
#11 0xb41842d2 in MessageLoop::DeferOrRunPendingTask (this=<optimized out>, pending_task=...)
    at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/message_loop.cc:369
#12 0xb4186198 in DoWork (this=<optimized out>) at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/message_loop.cc:456
#13 MessageLoop::DoWork (this=0xaef01cc0) at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/message_loop.cc:435
#14 0xb4181d58 in base::MessagePumpDefault::Run (this=0xaf00f880, delegate=0xaef01cc0)
    at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/message_pump_default.cc:34
#15 0xb4181cd4 in MessageLoop::RunInternal (this=this@entry=0xaef01cc0) at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/message_loop.cc:233
#16 0xb4181cee in RunHandler (this=0xaef01cc0) at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/message_loop.cc:226
#17 MessageLoop::Run (this=this@entry=0xaef01cc0) at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/message_loop.cc:200
#18 0xb4187f02 in base::Thread::ThreadMain (this=0xaf00ee80) at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/thread.cc:170
#19 0xb418647c in ThreadFunc (closure=<optimized out>) at /Volumes/firefoxos/Dev/mozilla-git/gecko-dev/ipc/chromium/src/base/platform_thread_posix.cc:39
#20 0xb6e2722c in __thread_entry (func=0xb4186475 <ThreadFunc(void*)>, arg=0xaf00ee80, tls=0xaef01dd0) at bionic/libc/bionic/pthread_create.cpp:105
(Assignee)

Comment 1

4 years ago
Created attachment 8607381 [details] [diff] [review]
Fix assertion

The initialization of the mWaitTime is in LayerManagerComposite::VisualFrameWarning[1]. Sometimes we may enter RenderDebugOverlay first before VisualFrameWarning. So I just add a simple check to make sure the mWaitTime is valid when using it.

[1] https://dxr.mozilla.org/mozilla-central/source/gfx/layers/composite/LayerManagerComposite.h?from=VisualFrameWarning&case=true#236
Attachment #8607381 - Flags: review?(benjamin)

Updated

4 years ago
Attachment #8607381 - Flags: review?(benjamin) → review?(nical.bugzilla)

Updated

4 years ago
Attachment #8607381 - Flags: review?(nical.bugzilla) → review+
(Assignee)

Updated

4 years ago
Keywords: checkin-needed
Backed out for suspicion of causing test_NuwaProcessCreation.html permatimeouts. Ignore the test_collapse.html failures in that log.
https://treeherder.mozilla.org/logviewer.html#?job_id=9999859&repo=mozilla-inbound

I'll update the bug once it's confirmed. Right now, it's just a suspicion based on the Try results of the other bugs in the push.
https://hg.mozilla.org/mozilla-central/rev/9a2c79e2c0e6
Status: NEW → RESOLVED
Last Resolved: 3 years ago
status-firefox41: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → 2.2 S13 (29may)
You need to log in before you can comment on or make changes to this bug.