Assertion failure: !IsNull() (Cannot compute with a null value), at /Users/skywalker/shell-cache/js-dbg-64-dm-clang-darwin-143bb4b9249e/objdir-js/dist/include/mozilla/TimeStamp.h:487

RESOLVED FIXED in Firefox 53

Status

()

--
critical
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: gkw, Assigned: sfink)

Tracking

(Blocks: 1 bug, {assertion, jsbugmon, testcase})

Trunk
mozilla53
x86_64
Mac OS X
assertion, jsbugmon, testcase
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox53 fixed)

Details

(Whiteboard: [jsbugmon:update])

Attachments

(2 attachments)

(Reporter)

Description

2 years ago
The following testcase crashes on mozilla-central revision 143bb4b9249e (build with --enable-debug --enable-more-deterministic, run with --fuzzing-safe --no-threads --ion-eager):

setJitCompilerOption('baseline.warmup.trigger', 4);
oomTest((function () {
    gcslice(0);
}))

Backtrace:

0   js-dbg-64-dm-clang-darwin-143bb4b9249e	0x000000010caabbb5 js::gcstats::Statistics::gcDuration(mozilla::BaseTimeDuration<mozilla::TimeDurationValueCalculator>*, mozilla::BaseTimeDuration<mozilla::TimeDurationValueCalculator>*) const + 229 (TimeStamp.h:487)
1   js-dbg-64-dm-clang-darwin-143bb4b9249e	0x000000010caaf0a9 js::gcstats::Statistics::endGC() + 1177 (Vector.h:426)
2   js-dbg-64-dm-clang-darwin-143bb4b9249e	0x000000010cab008a js::gcstats::Statistics::endSlice() + 1802 (Statistics.cpp:1151)
3   js-dbg-64-dm-clang-darwin-143bb4b9249e	0x000000010c5a2adc js::gc::GCRuntime::gcCycle(bool, js::SliceBudget&, JS::gcreason::Reason) + 1036 (jsgc.cpp:1390)
4   js-dbg-64-dm-clang-darwin-143bb4b9249e	0x000000010c5a3889 js::gc::GCRuntime::collect(bool, js::SliceBudget, JS::gcreason::Reason) + 729 (jsgc.cpp:6335)
/snip

For detailed crash information, see attachment.
(Reporter)

Comment 1

2 years ago
Created attachment 8822591 [details]
Detailed Crash Information
(Reporter)

Comment 2

2 years ago
autoBisect shows this is probably related to the following changeset:

The first bad revision is:
changeset:   https://hg.mozilla.org/mozilla-central/rev/8027870254d1
user:        Steve Fink
date:        Thu Dec 22 13:43:42 2016 -0800
summary:     Bug 1173354 - Switch GC statistics over to TimeStamp/TimeDuration, r=jonco

Steve, is bug 1173354 a likely regressor?
Blocks: 1173354
Flags: needinfo?(sphink)
(Assignee)

Comment 3

2 years ago
(In reply to Gary Kwong [:gkw] [:nth10sd] from comment #2)
> Steve, is bug 1173354 a likely regressor?

Yes, definitely.
(Assignee)

Comment 4

2 years ago
Created attachment 8822747 [details] [diff] [review]
Do not compute with null Timestamp on OOM

If we oom, then the slice end times may not get filled in. So don't compute anything using them.

It might be wiser to not report any timings at all on OOM, but this is an easy spot fix that minimizes the change to our current stats.
Attachment #8822747 - Flags: review?(jcoppeard)
(Assignee)

Updated

2 years ago
Assignee: nobody → sphink
Status: NEW → ASSIGNED
(Assignee)

Updated

2 years ago
Flags: needinfo?(sphink)
Comment on attachment 8822747 [details] [diff] [review]
Do not compute with null Timestamp on OOM

Review of attachment 8822747 [details] [diff] [review]:
-----------------------------------------------------------------

> It might be wiser to not report any timings at all on OOM

I agree, but this is good for now.
Attachment #8822747 - Flags: review?(jcoppeard) → review+

Comment 6

2 years ago
Pushed by sfink@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/4677955a6832
Do not compute with null Timestamp on OOM, r=jonco

Comment 7

2 years ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/4677955a6832
Status: ASSIGNED → RESOLVED
Last Resolved: 2 years ago
status-firefox53: affected → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
You need to log in before you can comment on or make changes to this bug.