Closed Bug 1397411 Opened 7 years ago Closed 7 years ago

Crash [@ js::jit::ScriptFromCalleeToken]

Categories

(Core :: JavaScript Engine, defect, P1)

x86_64
Linux
defect

Tracking

()

RESOLVED DUPLICATE of bug 1384121
Tracking Status
firefox57 --- affected

People

(Reporter: decoder, Assigned: jandem)

References

(Blocks 1 open bug)

Details

(Keywords: bugmon, crash, testcase, Whiteboard: [jsbugmon:])

Crash Data

Attachments

(1 file)

The following testcase crashes on mozilla-central revision 3ecda4678c49 (build with --enable-posix-nspr-emulation --enable-valgrind --enable-gczeal --disable-tests --enable-stdcxx-compat --disable-profiling --enable-debug --enable-optimize, run with --fuzzing-safe --thread-count=2 --baseline-eager --ion-offthread-compile=off --ion-check-range-analysis): See attachment. Backtrace: received signal SIGSEGV, Segmentation fault. js::jit::ScriptFromCalleeToken (token=0xfffe7ffff2166fa0) at js/src/jit/JitFrames.h:86 #0 js::jit::ScriptFromCalleeToken (token=0xfffe7ffff2166fa0) at js/src/jit/JitFrames.h:86 #1 js::jit::JSJitFrameIter::script (this=0x7fffffff8280) at js/src/jit/JSJitFrameIter.cpp:110 #2 0x00000000006ba71d in InvalidateActivation (fop=fop@entry=0x7ffff694a080, activations=..., invalidateAll=invalidateAll@entry=true) at js/src/jit/Ion.cpp:2998 #3 0x00000000006bb503 in js::jit::InvalidateAll (fop=fop@entry=0x7ffff694a080, zone=zone@entry=0x7ffff4f6a000) at js/src/jit/Ion.cpp:3130 #4 0x0000000000e64b3b in JS::Zone::discardJitCode (this=0x7ffff4f6a000, fop=0x7ffff694a080, discardBaselineCode=discardBaselineCode@entry=false) at js/src/gc/Zone.cpp:207 #5 0x0000000000c8ea7f in js::AutoClearTypeInferenceStateOnOOM::~AutoClearTypeInferenceStateOnOOM (this=0x7fffffff84e0, __in_chrg=<optimized out>) at js/src/vm/TypeInference.cpp:4622 #6 0x0000000000cdf5e1 in mozilla::Maybe<js::AutoClearTypeInferenceStateOnOOM>::reset (this=0x7fffffff84e0) at dist/include/mozilla/Maybe.h:446 #7 0x0000000000c8ef5a in mozilla::Maybe<js::AutoClearTypeInferenceStateOnOOM>::~Maybe (this=0x7fffffff84e0, __in_chrg=<optimized out>) at dist/include/mozilla/Maybe.h:100 #8 js::ObjectGroup::sweep (this=this@entry=0x7ffff528d280, oom=0x7fffffff84e0, oom@entry=0x0) at js/src/vm/TypeInference.cpp:4396 #9 0x000000000050b103 in js::ObjectGroup::maybeSweep (oom=0x0, this=0x7ffff528d280) at js/src/vm/ObjectGroup-inl.h:26 #10 js::ObjectGroup::flags (this=0x7ffff528d280) at js/src/vm/ObjectGroup-inl.h:32 #11 js::ObjectGroup::unknownProperties (this=0x7ffff528d280) at js/src/vm/ObjectGroup-inl.h:67 #12 0x000000000050b633 in js::TrackPropertyTypes (obj=obj@entry=0x7ffff5290060, id=..., id@entry=...) at js/src/vm/TypeInference-inl.h:372 #13 0x000000000086b329 in js::HasTypePropertyId (type=..., id=..., obj=0x7ffff5290060) at js/src/vm/TypeInference-inl.h:429 #14 js::HasTypePropertyId (value=..., id=..., obj=0x7ffff5290060) at js/src/vm/TypeInference-inl.h:438 #15 js::jit::SetNativeDataProperty<true> (cx=<optimized out>, obj=<optimized out>, name=<optimized out>, val=0x7fffffff8640) at js/src/jit/VMFunctions.cpp:1710 #16 0x0000089a5c1fcd64 in ?? () [...] #33 0x0000000000000000 in ?? () rax 0xfffe7ffff2166fa0 -422212698476640 rbx 0x7fffffff8280 140737488323200 rcx 0x20 32 rdx 0x0 0 rsi 0xf 15 rdi 0x7fffffff8280 140737488323200 rbp 0x7fffffff81f0 140737488323056 rsp 0x7fffffff81f0 140737488323056 r8 0x0 0 r9 0x7ffff4ee4130 140737302642992 r10 0x17 23 r11 0x7ffff699b108 140737330655496 r12 0x2 2 r13 0x113a172 18063730 r14 0x7ffff694a080 140737330323584 r15 0x11ebf34 18792244 rip 0x73c858 <js::jit::JSJitFrameIter::script() const+56> => 0x73c858 <js::jit::JSJitFrameIter::script() const+56>: testb $0x1,0x22(%rax) 0x73c85c <js::jit::JSJitFrameIter::script() const+60>: je 0x73c930 <js::jit::JSJitFrameIter::script() const+272> The testcase is intermittent, so a bisection might be complicated, but similar crashes I could never reproduce. So this is a good opportunity to squash an annoying OOM bug. Marking s-s due to non-null crash and since this seems to have to do with JIT.
Attached file Testcase (deleted) —
Whiteboard: [jsbugmon:update,bisect] → [jsbugmon:bisect]
JSBugMon: Cannot process bug: Unable to automatically reproduce, please track manually.
Whiteboard: [jsbugmon:bisect] → [jsbugmon:]
Jan please take a look and evaluate both sec and stability risk.
Assignee: nobody → jdemooij
Flags: needinfo?(jdemooij)
Priority: -- → P1
This is the bug I'm fixing in bug 1384121.
Status: NEW → RESOLVED
Closed: 7 years ago
Flags: needinfo?(jdemooij)
Resolution: --- → DUPLICATE
Group: javascript-core-security
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: