Closed
Bug 1507123
Opened 7 years ago
Closed 7 years ago
Assertion failure while merging stacks during recording a profile
Categories
(Core :: Gecko Profiler, defect)
Core
Gecko Profiler
Tracking
()
RESOLVED
DUPLICATE
of bug 1503640
mozilla65
People
(Reporter: canova, Unassigned)
Details
There is a crash during recording the profile with the (old) performance panel inside devtools. Tried to reproduce it with the new performance panel but it doesn't happen. It's probably we are streaming the profiler data on the old panel.
When we debug that crash we found out that it's an assertion failure. We are hitting an assertion inside JSJitProfilingFrameIterator::fixBaselineReturnAddress. That happens whenw we try to merge stacks with `MergeStacks` function.
This doesn't happen in every website.
STR:
1. Open https://www.somethingpositive.net/index.html
2. Start recording with the performance panel.
3. Scroll inside the website a bit and you'll see the tab crash.
This is the assertion and the backtrace:
Assertion failure: slotInfo.isStackSynced(), at /Users/nazimcanaltinova/projects/gecko/js/src/jit/JSJitFrameIter.cpp:673
Process 9211 stopped
* thread #83, name = 'SamplerThread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
frame #0: 0x00000001086ec350 XUL`js::jit::JSJitProfilingFrameIterator::fixBaselineReturnAddress(this=0x0000700010b1fca0) at JSJitFrameIter.cpp:673 [opt]
670 PCMappingSlotInfo slotInfo;
671 JSScript* script = bl->script();
672 returnAddressToFp_ = script->baselineScript()->nativeCodeForPC(script, override, &slotInfo);
-> 673 MOZ_ASSERT(slotInfo.isStackSynced());
674 return;
675 }
676 }
Target 0: (firefox) stopped.
(lldb) bt
* thread #83, name = 'SamplerThread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
* frame #0: 0x00000001086ec350 XUL`js::jit::JSJitProfilingFrameIterator::fixBaselineReturnAddress(this=0x0000700010b1fca0) at JSJitFrameIter.cpp:673 [opt]
frame #1: 0x0000000107ff387e XUL`JS::ProfilingFrameIterator::operator++(this=0x0000700010b1fc78) at Stack.cpp:2002 [opt]
frame #2: 0x000000010777407f XUL`MergeStacks(aFeatures=0, aIsSynchronous=false, aRegisteredThread=0x00000001029797b0, aRegs=<unavailable>, aNativeStack=0x0000700010b2bd38, aCollector=0x0000700010b2fd40) at platform.cpp:942 [opt]
frame #3: 0x0000000107773ba6 XUL`DoSharedSample(aLock=<unavailable>, aIsSynchronous=false, aRegisteredThread=0x00000001029797b0, aNow=<unavailable>, aRegs=0x0000700010b2fe58, aLastSample=0x000000013d5bf1c0, aBuffer=0x0000000159aefb00) at platform.cpp:1467 [opt]
frame #4: 0x0000000107763cd1 XUL`SamplerThread::Run() [inlined] DoPeriodicSample(aRegisteredThread=<unavailable>, aProfiledThreadData=0x000000013d5bf190, aNow=0x0000042b2fc8a7dc, aRegs=0x0000000107e2a21c) at platform.cpp:1499 [opt]
frame #5: 0x0000000107763ca6 XUL`SamplerThread::Run() [inlined] SamplerThread::Run(aRegs=0x0000000107e2a21c)::$_7::operator()(Registers const&) const at platform.cpp:2263 [opt]
frame #6: 0x0000000107763ca6 XUL`SamplerThread::Run() at platform-macos.cpp:133 [opt]
frame #7: 0x0000000107763c71 XUL`SamplerThread::Run(this=<unavailable>) at platform.cpp:2261 [opt]
frame #8: 0x0000000107764699 XUL`ThreadEntry(aArg=<unavailable>) at platform-macos.cpp:158 [opt]
frame #9: 0x00007fff6092b339 libsystem_pthread.dylib`_pthread_body + 126
frame #10: 0x00007fff6092e2a7 libsystem_pthread.dylib`_pthread_start + 70
frame #11: 0x00007fff6092a445 libsystem_pthread.dylib`thread_start + 13
Comment 1•7 years ago
|
||
Moving to Gecko Profiler component.
Component: Performance Tools (Profiler/Timeline) → Gecko Profiler
Product: DevTools → Core
Target Milestone: --- → mozilla65
Version: unspecified → Trunk
| Reporter | ||
Comment 2•7 years ago
|
||
Btw, I came across this assertion with the Gecko-Profiler-Addon as well. It's not performance panel only. I hit that on nytimes.com while the profiler is active.
| Reporter | ||
Updated•7 years ago
|
Summary: Assertion failure while merging stacks during recording profile with the performance panel → Assertion failure while merging stacks during recording a profile
| Reporter | ||
Comment 3•7 years ago
|
||
It looks like this is a duplicate of Bug 1503640. Closing this.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•