Bug 113020

Summary: [Mac] [WK2] REGRESSION(r146518?): Multiple Web Inspector tests intermittently asserts in WebInspectorProxy::open
Product: WebKit Reporter: Ryosuke Niwa <rniwa>
Component: Web Inspector (Deprecated)Assignee: Timothy Hatcher <timothy>
Status: RESOLVED FIXED    
Severity: Normal CC: apavlov, commit-queue, jberlin, keishi, loislo, pfeldman, pmuellr, sam, timothy, vsevik, web-inspector-bugs, webkit-bug-importer, yurys
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
Proposed Change none

Comment 1 Ryosuke Niwa 2013-03-22 01:24:28 PDT
e.g.
http://build.webkit.org/results/Apple%20MountainLion%20Debug%20WK2%20(Tests)/r146567%20(8064)/results.html

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00000000bbadbeef

VM Regions Near 0xbbadbeef:
--> 
    __TEXT                 0000000108fa2000-0000000108fcf000 [  180K] r-x/rwx SM=COW  /Volumes/VOLUME/*

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebKit2             	0x000000010aa423d1 WebKit::WebInspectorProxy::open() + 81 (WebInspectorProxy.cpp:386)
1   com.apple.WebKit2             	0x000000010aa43110 WebKit::WebInspectorProxy::bringToFront() + 80 (WebInspectorProxy.cpp:427)
2   com.apple.WebKit2             	0x000000010aa51a13 void CoreIPC::callMemberFunction<WebKit::WebInspectorProxy, void (WebKit::WebInspectorProxy::*)()>(CoreIPC::Arguments0 const&, WebKit::WebInspectorProxy*, void (WebKit::WebInspectorProxy::*)()) + 131 (HandleMessage.h:16)
3   com.apple.WebKit2             	0x000000010aa51219 void CoreIPC::handleMessage<Messages::WebInspectorProxy::BringToFront, WebKit::WebInspectorProxy, void (WebKit::WebInspectorProxy::*)()>(CoreIPC::MessageDecoder&, WebKit::WebInspectorProxy*, void (WebKit::WebInspectorProxy::*)()) + 105 (HandleMessage.h:341)
4   com.apple.WebKit2             	0x000000010aa50c37 WebKit::WebInspectorProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&) + 295 (WebInspectorProxyMessageReceiver.cpp:48)
5   com.apple.WebKit2             	0x000000010aa50ff7 non-virtual thunk to WebKit::WebInspectorProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&) + 55
6   com.apple.WebKit2             	0x000000010a849097 CoreIPC::MessageReceiverMap::dispatchMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&) + 519 (MessageReceiverMap.cpp:87)
7   com.apple.WebKit2             	0x000000010a79b1c7 WebKit::ChildProcessProxy::dispatchMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&) + 55 (ChildProcessProxy.cpp:107)
8   com.apple.WebKit2             	0x000000010ab7502a WebKit::WebProcessProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&) + 58 (WebProcessProxy.cpp:362)
9   com.apple.WebKit2             	0x000000010ab75147 non-virtual thunk to WebKit::WebProcessProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&) + 55
10  com.apple.WebKit2             	0x000000010a7a30b3 CoreIPC::Connection::dispatchMessage(CoreIPC::MessageDecoder&) + 51 (Connection.cpp:758)
11  com.apple.WebKit2             	0x000000010a79f89a CoreIPC::Connection::dispatchMessage(WTF::PassOwnPtr<CoreIPC::MessageDecoder>) + 218 (Connection.cpp:780)
12  com.apple.WebKit2             	0x000000010a7a304b CoreIPC::Connection::dispatchOneMessage() + 203 (Connection.cpp:806)
13  com.apple.WebKit2             	0x000000010a7ae6c2 WTF::FunctionWrapper<void (CoreIPC::Connection::*)()>::operator()(CoreIPC::Connection*) + 114 (Functional.h:218)
14  com.apple.WebKit2             	0x000000010a7ae645 WTF::BoundFunctionImpl<WTF::FunctionWrapper<void (CoreIPC::Connection::*)()>, void (CoreIPC::Connection*)>::operator()() + 53 (Functional.h:496)
15  com.apple.WebCore             	0x000000010d3e6149 WTF::Function<void ()>::operator()() const + 137 (Functional.h:704)
16  com.apple.WebCore             	0x000000010d3e5e0f WebCore::RunLoop::performWork() + 207 (RunLoop.cpp:93)
17  com.apple.WebCore             	0x000000010d3e716e WebCore::RunLoop::performWork(void*) + 62 (RunLoopCF.cpp:66)
18  com.apple.CoreFoundation      	0x00007fff89badb31 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
19  com.apple.CoreFoundation      	0x00007fff89bad455 __CFRunLoopDoSources0 + 245
20  com.apple.CoreFoundation      	0x00007fff89bd07f5 __CFRunLoopRun + 789
Comment 2 Ryosuke Niwa 2013-03-22 01:29:22 PDT
More tests crashing with the same stack trace:
http://build.webkit.org/results/Apple%20Lion%20Debug%20WK2%20(Tests)/r146565%20(8279)/results.html
Comment 3 Ryosuke Niwa 2013-03-22 01:33:26 PDT
Added test expectations in http://trac.webkit.org/changeset/146574.
Comment 4 Timothy Hatcher 2013-03-22 05:18:48 PDT
Assertion failure. Looking into it.
Comment 5 Ryosuke Niwa 2013-03-22 15:15:29 PDT
It seems like this assertion can happen on any inspector test :(

e.g.
http://build.webkit.org/results/Apple%20MountainLion%20Debug%20WK2%20(Tests)/r146647%20(8100)/results.html
Comment 6 Jessie Berlin 2013-04-16 14:57:18 PDT
*** Bug 114576 has been marked as a duplicate of this bug. ***
Comment 7 Radar WebKit Bug Importer 2013-04-17 08:26:05 PDT
<rdar://problem/13673565>
Comment 8 Timothy Hatcher 2013-04-18 08:10:27 PDT
I'm just going to remove this assert. It does not affect normal debug use, only the test harness.
Comment 9 Timothy Hatcher 2013-04-18 08:12:45 PDT
Created attachment 198737 [details]
Proposed Change
Comment 10 Jessie Berlin 2013-04-18 08:54:18 PDT
Comment on attachment 198737 [details]
Proposed Change

r=me, assuming you tested that this doesn't introduce any flakiness further down the line when running the tests
Comment 11 Timothy Hatcher 2013-04-18 09:03:32 PDT
Comment on attachment 198737 [details]
Proposed Change

I've only seen the ASSERT on the bots, never locally. So we will seeā€¦
Comment 12 WebKit Commit Bot 2013-04-18 09:33:20 PDT
Comment on attachment 198737 [details]
Proposed Change

Clearing flags on attachment: 198737

Committed r148682: <http://trac.webkit.org/changeset/148682>
Comment 13 WebKit Commit Bot 2013-04-18 09:33:23 PDT
All reviewed patches have been landed.  Closing bug.