B2G_DEBUG=1 for beta/nightly needs help

RESOLVED INCOMPLETE

Status

Firefox OS
General
RESOLVED INCOMPLETE
5 years ago
4 years ago

People

(Reporter: m1, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Beta + nightly fall down pretty badly at the moment when B2G_DEBUG=1 is enabled.

Some immediate issues:
* We fail a couple assertions right at boot
** widget/gonk/nsWindow
** widget/xpwidgets/nsBaseScreen.cpp
* FTU app crashes

I've seen other transitory assertion failures in as well but no solid STR yet.
(Reporter)

Comment 1

5 years ago
I've seen these two as well but no solid STR to share (other that boot a couple times and play with the device):
* [Parent 602] ###!!! ASSERTION: Existing entry in disk StartupCache.: 'NS_SUCCEEDED(rv) && hasEntry == false', file .../gecko/startupcache/StartupCache.cpp, line 398
* http://mxr.mozilla.org/mozilla-beta/source/toolkit/crashreporter/nsExceptionHandler.cpp#1897
Just for some background (this was IRC ping), we have two forms of "assertion".
 - MOZ_ASSERT(): same as C assert().  Fatal error.  Any of these failing is serious.
 - NS_ASSERTION(): not the same semantics as C assert().  We use this to mark unexpected program states that should be investigated when hit, but aren't fatal errors.  Unfortunately it's used somewhat inconsistently.  We have to address these on a case by case basis.
(In reply to Michael Vines [:m1] from comment #0)
> Beta + nightly fall down pretty badly at the moment when B2G_DEBUG=1 is
> enabled.
> 
> Some immediate issues:
> * We fail a couple assertions right at boot
> ** widget/gonk/nsWindow
> ** widget/xpwidgets/nsBaseScreen.cpp

Hm, I don't see these.  Are you by chance running with HwcComposer2D enabled?

> * FTU app crashes
> 

Ooh, I do reproduce this, but only on device bootup.  Looks like a bad one.

(In reply to Michael Vines [:m1] from comment #1)
> I've seen these two as well but no solid STR to share (other that boot a
> couple times and play with the device):
> * [Parent 602] ###!!! ASSERTION: Existing entry in disk StartupCache.:
> 'NS_SUCCEEDED(rv) && hasEntry == false', file
> .../gecko/startupcache/StartupCache.cpp, line 398

mwu, is this an assert() or a warn()?

> *
> http://mxr.mozilla.org/mozilla-beta/source/toolkit/crashreporter/
> nsExceptionHandler.cpp#1897

Couldn't reproduce but this would be bad.

Overall this isn't an unusual number of NS_ASSERTION warnings, but the two MOZ_ASSERT() failures above look bad.
Flags: needinfo?(mwu)
(Reporter)

Comment 4

5 years ago
(In reply to Chris Jones [:cjones] [:warhammer] from comment #3)
> (In reply to Michael Vines [:m1] from comment #0)
> > Beta + nightly fall down pretty badly at the moment when B2G_DEBUG=1 is
> > enabled.
> > 
> > Some immediate issues:
> > * We fail a couple assertions right at boot
> > ** widget/gonk/nsWindow
> > ** widget/xpwidgets/nsBaseScreen.cpp
> 
> Hm, I don't see these.  Are you by chance running with HwcComposer2D enabled?

I disabled that just to be sure.  Removed some other noncommon bits as well.  I'm running with bootanimation.zip so maybe that's the diff.

> 
> > * FTU app crashes
> > 
> 
> Ooh, I do reproduce this, but only on device bootup.  Looks like a bad one.
> 
> (In reply to Michael Vines [:m1] from comment #1)
> > I've seen these two as well but no solid STR to share (other that boot a
> > couple times and play with the device):
> > * [Parent 602] ###!!! ASSERTION: Existing entry in disk StartupCache.:
> > 'NS_SUCCEEDED(rv) && hasEntry == false', file
> > .../gecko/startupcache/StartupCache.cpp, line 398
> 
> mwu, is this an assert() or a warn()?

It was aborting the system process.  I had to whack /data/b2g to recover.  Will try to get STR on this.

> 
> > *
> > http://mxr.mozilla.org/mozilla-beta/source/toolkit/crashreporter/
> > nsExceptionHandler.cpp#1897
> 
> Couldn't reproduce but this would be bad.

I'll try harder to get STR on this one too.
(In reply to Michael Vines [:m1] from comment #4)
> (In reply to Chris Jones [:cjones] [:warhammer] from comment #3)
> > (In reply to Michael Vines [:m1] from comment #0)
> > > Beta + nightly fall down pretty badly at the moment when B2G_DEBUG=1 is
> > > enabled.
> > > 
> > > Some immediate issues:
> > > * We fail a couple assertions right at boot
> > > ** widget/gonk/nsWindow
> > > ** widget/xpwidgets/nsBaseScreen.cpp
> > 
> > Hm, I don't see these.  Are you by chance running with HwcComposer2D enabled?
> 
> I disabled that just to be sure.  Removed some other noncommon bits as well.
> I'm running with bootanimation.zip so maybe that's the diff.

Aha, seems likely.  I don't have that.

> > (In reply to Michael Vines [:m1] from comment #1)
> > > I've seen these two as well but no solid STR to share (other that boot a
> > > couple times and play with the device):
> > > * [Parent 602] ###!!! ASSERTION: Existing entry in disk StartupCache.:
> > > 'NS_SUCCEEDED(rv) && hasEntry == false', file
> > > .../gecko/startupcache/StartupCache.cpp, line 398
> > 
> > mwu, is this an assert() or a warn()?
> 
> It was aborting the system process.  I had to whack /data/b2g to recover. 
> Will try to get STR on this.

NS_ASSERTION is nonfatal unless you enable some power-user options.  Did you do that, or maybe was there something else in the logcat just afterwards?

> > 
> > > *
> > > http://mxr.mozilla.org/mozilla-beta/source/toolkit/crashreporter/
> > > nsExceptionHandler.cpp#1897
> > 
> > Couldn't reproduce but this would be bad.
> 
> I'll try harder to get STR on this one too.

I have a guess for what this might be so STR might not be needed.
(In reply to Chris Jones [:cjones] [:warhammer] from comment #5)
> (In reply to Michael Vines [:m1] from comment #4)
> > (In reply to Chris Jones [:cjones] [:warhammer] from comment #3)
> > > (In reply to Michael Vines [:m1] from comment #0)
> > > > *
> > > > http://mxr.mozilla.org/mozilla-beta/source/toolkit/crashreporter/
> > > > nsExceptionHandler.cpp#1897
> > > 
> > > Couldn't reproduce but this would be bad.
> > 
> > I'll try harder to get STR on this one too.
> 
> I have a guess for what this might be so STR might not be needed.

If my guess is right, the code running after this would probably just crash hard so the logcat would look like a failed fatal assertion.

Comment 8

5 years ago
The startup cache warning/assertion itself shouldn't be fatal but could mean very bad things. The particular variant you got is especially weird.
Flags: needinfo?(mwu)
Andrea, please investigate.
Assignee: nobody → amarchesini
blocking-basecamp: ? → +
This is a metabug.
blocking-basecamp: + → ---
Filed bug 821444 about debug builds recently becoming unusably slow.
Having this block bug 817946 is causing a weird dependency graph in another bug so I'm dropping it from the blocks list.
No longer blocks: 817946
I'm not actually working on it. Is this bug still valid?
Assignee: amarchesini → nobody
Flags: needinfo?(mvines)
I recently filed bug 873573 and updated bug 841206 for hamachi debug builds.
(Reporter)

Comment 15

5 years ago
This might still be an issue but is not something I care a lot about anymore.
Flags: needinfo?(mvines)
(Reporter)

Updated

5 years ago
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.