Bug 131919 - REGRESSION (r167530): ASSERT(m_selfTime <= m_totalTime) on tests that run after certain Inspector tests
Summary: REGRESSION (r167530): ASSERT(m_selfTime <= m_totalTime) on tests that run aft...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar, Regression
Depends on:
Blocks:
 
Reported: 2014-04-20 12:25 PDT by Alexey Proskuryakov
Modified: 2015-07-31 18:14 PDT (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey Proskuryakov 2014-04-20 12:25:40 PDT
js/dom/JSON-stringify.html started to ASSERT very frequently after <http://trac.webkit.org/r167530>:

0   com.apple.JavaScriptCore      	0x000000010abc44ea WTFCrash + 42 (Assertions.cpp:333)
1   com.apple.JavaScriptCore      	0x000000010aadb068 JSC::ProfileNode::stopProfiling() + 360 (ProfileNode.cpp:133)
2   com.apple.JavaScriptCore      	0x000000010aad46d8 JSC::Profile::forEach(void (JSC::ProfileNode::*)()) + 328 (Profile.cpp:65)
3   com.apple.JavaScriptCore      	0x000000010aad958a JSC::ProfileGenerator::stopProfiling() + 74 (ProfileGenerator.cpp:162)
4   com.apple.JavaScriptCore      	0x000000010a993c5d JSC::LegacyProfiler::stopProfiling(JSC::JSGlobalObject*) + 109 (LegacyProfiler.cpp:112)
5   com.apple.JavaScriptCore      	0x000000010a8d70f9 JSC::JSGlobalObject::~JSGlobalObject() + 121 (JSGlobalObject.cpp:188)
6   com.apple.WebCore             	0x000000010d4513b5 WebCore::JSDOMGlobalObject::~JSDOMGlobalObject() + 85 (JSDOMGlobalObject.h:43)
7   com.apple.WebCore             	0x000000010d4e7c11 WebCore::JSDOMWindowBase::~JSDOMWindowBase() + 49 (JSDOMWindowBase.h:37)
8   com.apple.WebCore             	0x000000010d4e4615 WebCore::JSDOMWindowBase::~JSDOMWindowBase() + 21 (JSDOMWindowBase.h:37)
9   com.apple.WebCore             	0x000000010d4e3885 WebCore::JSDOMWindowBase::destroy(JSC::JSCell*) + 21 (JSDOMWindowBase.cpp:84)
10  com.apple.JavaScriptCore      	0x000000010a7df626 JSC::Heap::FinalizerOwner::finalize(JSC::Handle<JSC::Unknown>, void*) + 70 (Heap.cpp:1309)
11  com.apple.JavaScriptCore      	0x000000010ab7f1ed JSC::WeakBlock::finalize(JSC::WeakImpl*) + 189 (WeakSetInlines.h:52)
12  com.apple.JavaScriptCore      	0x000000010ab7eb6e JSC::WeakBlock::sweep() + 158 (WeakBlock.cpp:77)
Comment 1 Alexey Proskuryakov 2014-04-20 15:40:18 PDT
Worst of all, it's likely some preceding test that's breaking things.

How important was r167530? It broke at least two tests in mysterious ways, can we just not do this at this time?
Comment 2 Alexey Proskuryakov 2014-04-20 16:11:47 PDT
I can reproduce with:

run-webkit-tests --child-processes=1 inspector/dom/content-flow-list.html js/dom/JSON-parse.html --v --repeat-each 10

So, it's inspector/dom/content-flow-list.html that causes this assertion failure.
Comment 3 Timothy Hatcher 2014-04-20 21:04:57 PDT
That change is important. I'll look into the crashes / failures. Unlike the GC failure, this one is actually related to my change.
Comment 4 Alexey Proskuryakov 2014-04-21 10:00:26 PDT
There are many tests that randomly assert because of this - at least half a dozen of js/dom tests do, apparently depending on how quickly garbage collection occurs. So, it would not make a lot of sense to mark these as flakily crashing.

Skipped all inspector/dom tests in <http://trac.webkit.org/r167593>, in hopes that these are the only ones that cause trouble. Also commented out flakiness expectations that we had for some of these.
Comment 5 Timothy Hatcher 2014-04-24 13:35:01 PDT
<rdar://problem/16713655>
Comment 6 Timothy Hatcher 2014-04-24 13:37:39 PDT
I suspect https://trac.webkit.org/changeset/167647 might have fixed this.
Comment 7 Joseph Pecoraro 2015-07-31 18:14:35 PDT
I don't see these anymore, closing this bug.