Closed Bug 1326343 Opened 7 years ago Closed 7 years ago

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

Categories

(Core :: JavaScript Engine, defect)

x86_64
macOS
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla53
Tracking Status
firefox53 --- fixed

People

(Reporter: gkw, Assigned: sfink)

References

Details

(Keywords: assertion, bugmon, testcase, Whiteboard: [jsbugmon:update])

Attachments

(2 files)

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.
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)
(In reply to Gary Kwong [:gkw] [:nth10sd] from comment #2)
> Steve, is bug 1173354 a likely regressor?

Yes, definitely.
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: nobody → sphink
Status: NEW → ASSIGNED
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+
Pushed by sfink@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/4677955a6832
Do not compute with null Timestamp on OOM, r=jonco
https://hg.mozilla.org/mozilla-central/rev/4677955a6832
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: