Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(404)

Issue 306053010: Tried using CrossThreadPersistent for workerDebuggerAgents (Closed)

Created:
6 years, 6 months ago by keishi
Modified:
6 years, 6 months ago
Reviewers:
CC:
blink-reviews, tzik, ericu+idb_chromium.org, apavlov+blink_chromium.org, aandrey+blink_chromium.org, caseq+blink_chromium.org, arv+blink, pfeldman+blink_chromium.org, malch+blink_chromium.org, alecflett, yurys+blink_chromium.org, abarth-chromium, nhiroki, blink-reviews-bindings_chromium.org, devtools-reviews_chromium.org, loislo+blink_chromium.org, timvolodine, eustas+blink_chromium.org, paulirish+reviews_chromium.org, lushnikov+blink_chromium.org, jsbell+idb_chromium.org, watchdog-blink-watchlist_google.com, vsevik+blink_chromium.org, mvanouwerkerk+watch_chromium.org, Inactive, cmumford, dgrogan, sergeyv+blink_chromium.org, kinuko+fileapi
Visibility:
Public.

Description

Tried using CrossThreadPersistent for workerDebuggerAgents BUG=

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+737 lines, -318 lines) Patch
M Source/bindings/v8/custom/V8InjectedScriptManager.cpp View 2 chunks +2 lines, -2 lines 0 comments Download
M Source/core/inspector/CodeGeneratorInstrumentation.py View 6 chunks +18 lines, -7 lines 0 comments Download
M Source/core/inspector/DOMEditor.h View 3 chunks +7 lines, -4 lines 0 comments Download
M Source/core/inspector/DOMEditor.cpp View 12 chunks +95 lines, -33 lines 0 comments Download
M Source/core/inspector/InjectedScriptHost.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/InjectedScriptHost.cpp View 2 chunks +9 lines, -4 lines 0 comments Download
M Source/core/inspector/InjectedScriptHost.idl View 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/inspector/InjectedScriptManager.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/inspector/InspectorApplicationCacheAgent.h View 2 chunks +6 lines, -4 lines 0 comments Download
M Source/core/inspector/InspectorApplicationCacheAgent.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorBaseAgent.h View 4 chunks +10 lines, -6 lines 0 comments Download
M Source/core/inspector/InspectorBaseAgent.cpp View 4 chunks +14 lines, -2 lines 0 comments Download
M Source/core/inspector/InspectorCSSAgent.h View 3 chunks +12 lines, -11 lines 0 comments Download
M Source/core/inspector/InspectorCSSAgent.cpp View 16 chunks +53 lines, -15 lines 0 comments Download
M Source/core/inspector/InspectorCanvasAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/InspectorCanvasAgent.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorConsoleAgent.h View 2 chunks +2 lines, -1 line 0 comments Download
M Source/core/inspector/InspectorConsoleAgent.cpp View 1 chunk +9 lines, -1 line 0 comments Download
M Source/core/inspector/InspectorController.h View 2 chunks +13 lines, -12 lines 0 comments Download
M Source/core/inspector/InspectorController.cpp View 9 chunks +52 lines, -40 lines 0 comments Download
M Source/core/inspector/InspectorDOMAgent.h View 3 chunks +7 lines, -6 lines 0 comments Download
M Source/core/inspector/InspectorDOMAgent.cpp View 5 chunks +21 lines, -6 lines 0 comments Download
M Source/core/inspector/InspectorDOMDebuggerAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/InspectorDOMDebuggerAgent.cpp View 3 chunks +12 lines, -3 lines 0 comments Download
M Source/core/inspector/InspectorDOMStorageAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/InspectorDOMStorageAgent.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorDebuggerAgent.h View 1 chunk +2 lines, -1 line 0 comments Download
M Source/core/inspector/InspectorDebuggerAgent.cpp View 1 chunk +2 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorHeapProfilerAgent.h View 2 chunks +5 lines, -3 lines 0 comments Download
M Source/core/inspector/InspectorHeapProfilerAgent.cpp View 4 chunks +17 lines, -5 lines 0 comments Download
M Source/core/inspector/InspectorHistory.h View 4 chunks +12 lines, -8 lines 0 comments Download
M Source/core/inspector/InspectorHistory.cpp View 4 chunks +12 lines, -3 lines 0 comments Download
M Source/core/inspector/InspectorInputAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/InspectorInputAgent.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorInspectorAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/InspectorInspectorAgent.cpp View 1 chunk +8 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorInstrumentation.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/inspector/InspectorLayerTreeAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/InspectorLayerTreeAgent.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorMemoryAgent.h View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/inspector/InspectorPageAgent.h View 3 chunks +4 lines, -2 lines 0 comments Download
M Source/core/inspector/InspectorPageAgent.cpp View 2 chunks +8 lines, -2 lines 0 comments Download
M Source/core/inspector/InspectorProfilerAgent.h View 1 chunk +3 lines, -2 lines 0 comments Download
M Source/core/inspector/InspectorProfilerAgent.cpp View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/inspector/InspectorResourceAgent.h View 3 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/InspectorResourceAgent.cpp View 1 chunk +8 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorStyleSheet.h View 8 chunks +12 lines, -8 lines 0 comments Download
M Source/core/inspector/InspectorStyleSheet.cpp View 4 chunks +19 lines, -4 lines 0 comments Download
M Source/core/inspector/InspectorTimelineAgent.h View 4 chunks +8 lines, -7 lines 0 comments Download
M Source/core/inspector/InspectorTimelineAgent.cpp View 15 chunks +42 lines, -20 lines 0 comments Download
M Source/core/inspector/InspectorTracingAgent.h View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/inspector/InspectorWorkerAgent.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/inspector/InspectorWorkerAgent.cpp View 2 chunks +4 lines, -2 lines 0 comments Download
M Source/core/inspector/PageConsoleAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/PageConsoleAgent.cpp View 1 chunk +9 lines, -1 line 0 comments Download
M Source/core/inspector/PageDebuggerAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/PageDebuggerAgent.cpp View 2 chunks +8 lines, -2 lines 0 comments Download
M Source/core/inspector/PageRuntimeAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/PageRuntimeAgent.cpp View 1 chunk +8 lines, -0 lines 0 comments Download
M Source/core/inspector/WorkerConsoleAgent.h View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/inspector/WorkerDebuggerAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/core/inspector/WorkerDebuggerAgent.cpp View 2 chunks +48 lines, -10 lines 0 comments Download
M Source/core/inspector/WorkerInspectorController.h View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/inspector/WorkerInspectorController.cpp View 4 chunks +12 lines, -12 lines 0 comments Download
M Source/core/inspector/WorkerRuntimeAgent.h View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/inspector/WorkerRuntimeAgent.cpp View 1 chunk +2 lines, -0 lines 0 comments Download
M Source/core/page/Page.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/page/Page.cpp View 1 chunk +1 line, -0 lines 0 comments Download
M Source/modules/device_orientation/DeviceOrientationInspectorAgent.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/modules/filesystem/InspectorFileSystemAgent.h View 2 chunks +3 lines, -2 lines 0 comments Download
M Source/modules/filesystem/InspectorFileSystemAgent.cpp View 2 chunks +8 lines, -2 lines 0 comments Download
M Source/modules/geolocation/GeolocationController.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/modules/geolocation/GeolocationInspectorAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/modules/geolocation/GeolocationInspectorAgent.cpp View 2 chunks +9 lines, -2 lines 0 comments Download
M Source/modules/indexeddb/InspectorIndexedDBAgent.h View 2 chunks +2 lines, -1 line 0 comments Download
M Source/modules/indexeddb/InspectorIndexedDBAgent.cpp View 2 chunks +7 lines, -1 line 0 comments Download
M Source/modules/webdatabase/DatabaseClient.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/modules/webdatabase/InspectorDatabaseAgent.h View 2 chunks +4 lines, -3 lines 0 comments Download
M Source/modules/webdatabase/InspectorDatabaseAgent.cpp View 1 chunk +6 lines, -0 lines 0 comments Download

Messages

Total messages: 1 (0 generated)
keishi
6 years, 6 months ago (2014-06-02 06:53:35 UTC) #1
I tried using CrossThreadPersistent but I still got the same kind of failure.

out/Debug/Content\ Shell.app/Contents/MacOS/Content\ Shell --dump-render-tree
--no-sandbox --single-process inspector/profiler/heap-snapshot-loader.html

#READY
WorkerDebuggerAgent::WorkerDebuggerAgent 0x247c1b88
WorkerDebuggerAgent::WorkerDebuggerAgent 0x26301b88
Process 80424 stopped
* thread #28: tid = 0x99c0c8, 0x0622b532
libblink_platform.dylib`WebCore::HeapObjectHeader::checkHeader(this=0x247c1c64)
const + 34 at Heap.h:1275, name = 'WebCore: Worker', stop reason =
EXC_BAD_ACCESS (code=1, address=0x247c1c68)
    frame #0: 0x0622b532
libblink_platform.dylib`WebCore::HeapObjectHeader::checkHeader(this=0x247c1c64)
const + 34 at Heap.h:1275
   1272	NO_SANITIZE_ADDRESS
   1273	void HeapObjectHeader::checkHeader() const
   1274	{
-> 1275	    ASSERT(m_magic == magic);
   1276	}
   1277	
   1278	Address HeapObjectHeader::payload()
(lldb) bt
* thread #28: tid = 0x99c0c8, 0x0622b532
libblink_platform.dylib`WebCore::HeapObjectHeader::checkHeader(this=0x247c1c64)
const + 34 at Heap.h:1275, name = 'WebCore: Worker', stop reason =
EXC_BAD_ACCESS (code=1, address=0x247c1c68)
  * frame #0: 0x0622b532
libblink_platform.dylib`WebCore::HeapObjectHeader::checkHeader(this=0x247c1c64)
const + 34 at Heap.h:1275
    frame #1: 0x06237fa1
libblink_platform.dylib`WebCore::Visitor::checkGCInfo(this=0x18277590,
payload=0x247c1c70, gcInfo=0x0ace5754) + 65 at Visitor.cpp:42
    frame #2: 0x09bc2c3e
libblink_web.dylib`WebCore::DefaultTraceTrait<WebCore::HeapHashMap<WebCore::WeakMember<WebCore::WorkerDebuggerAgent>,
WTF::OwnPtr<WebCore::(anonymous namespace)::WorkerDebuggerAgentRemover>,
WTF::PtrHash<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WTF::OwnPtr<WebCore::(visitor=0x18277590,
t=0x247c1c70)::WorkerDebuggerAgentRemover> > >,
false>::checkGCInfo(WebCore::Visitor*,
WebCore::HeapHashMap<WebCore::WeakMember<WebCore::WorkerDebuggerAgent>,
WTF::OwnPtr<WebCore::(anonymous namespace)::WorkerDebuggerAgentRemover>,
WTF::PtrHash<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WTF::OwnPtr<WebCore::(anonymous
namespace)::WorkerDebuggerAgentRemover> > > const*) + 78 at Visitor.h:592
    frame #3: 0x09bc2059
libblink_web.dylib`WebCore::TraceTrait<WebCore::HeapHashMap<WebCore::WeakMember<WebCore::WorkerDebuggerAgent>,
WTF::OwnPtr<WebCore::(anonymous namespace)::WorkerDebuggerAgentRemover>,
WTF::PtrHash<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WTF::OwnPtr<WebCore::(visitor=0x18277590,
t=0x247c1c70)::WorkerDebuggerAgentRemover> > > >::checkGCInfo(WebCore::Visitor*,
WebCore::HeapHashMap<WebCore::WeakMember<WebCore::WorkerDebuggerAgent>,
WTF::OwnPtr<WebCore::(anonymous namespace)::WorkerDebuggerAgentRemover>,
WTF::PtrHash<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WTF::OwnPtr<WebCore::(anonymous
namespace)::WorkerDebuggerAgentRemover> > > const*) + 57 at Visitor.h:188
    frame #4: 0x09bc1fe1 libblink_web.dylib`void
WebCore::Visitor::mark<WebCore::HeapHashMap<WebCore::WeakMember<WebCore::WorkerDebuggerAgent>,
WTF::OwnPtr<WebCore::(anonymous namespace)::WorkerDebuggerAgentRemover>,
WTF::PtrHash<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WTF::OwnPtr<WebCore::(this=0x18277590,
t=0x247c1c70)::WorkerDebuggerAgentRemover> > >
>(WebCore::HeapHashMap<WebCore::WeakMember<WebCore::WorkerDebuggerAgent>,
WTF::OwnPtr<WebCore::(anonymous namespace)::WorkerDebuggerAgentRemover>,
WTF::PtrHash<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WTF::OwnPtr<WebCore::(anonymous
namespace)::WorkerDebuggerAgentRemover> > >*) + 81 at Visitor.h:226
    frame #5: 0x09bc1f67
libblink_web.dylib`WebCore::Persistent<WebCore::HeapHashMap<WebCore::WeakMember<WebCore::WorkerDebuggerAgent>,
WTF::OwnPtr<WebCore::(anonymous namespace)::WorkerDebuggerAgentRemover>,
WTF::PtrHash<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WTF::OwnPtr<WebCore::(this=0x183f64b0,
visitor=0x18277590)::WorkerDebuggerAgentRemover> > >,
WebCore::GlobalPersistents>::trace(WebCore::Visitor*) + 71 at Handle.h:343
    frame #6: 0x09bc1efd
libblink_web.dylib`WebCore::TraceMethodDelegate<WebCore::Persistent<WebCore::HeapHashMap<WebCore::WeakMember<WebCore::WorkerDebuggerAgent>,
WTF::OwnPtr<WebCore::(anonymous namespace)::WorkerDebuggerAgentRemover>,
WTF::PtrHash<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WTF::OwnPtr<WebCore::(visitor=0x18277590,
self=0x183f64b0)::WorkerDebuggerAgentRemover> > >, WebCore::GlobalPersistents>,
&(WebCore::Persistent<WebCore::HeapHashMap<WebCore::WeakMember<WebCore::WorkerDebuggerAgent>,
WTF::OwnPtr<WebCore::(anonymous namespace)::WorkerDebuggerAgentRemover>,
WTF::PtrHash<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WebCore::WeakMember<WebCore::WorkerDebuggerAgent> >,
WTF::HashTraits<WTF::OwnPtr<WebCore::(anonymous
namespace)::WorkerDebuggerAgentRemover> > >,
WebCore::GlobalPersistents>::trace(WebCore::Visitor*))>::trampoline(WebCore::Visitor*,
void*) + 141 at Visitor.h:83
    frame #7: 0x06230689
libblink_platform.dylib`WebCore::PersistentNode::trace(this=0x183f64b0,
visitor=0x18277590) + 57 at Handle.h:123
    frame #8: 0x06237f33
libblink_platform.dylib`WebCore::PersistentAnchor::trace(this=0x1a86feb0,
visitor=0x18277590) + 83 at Handle.h:232
    frame #9: 0x06237dbd
libblink_platform.dylib`WebCore::TraceMethodDelegate<WebCore::PersistentAnchor,
&(visitor=0x18277590, self=0x1a86feb0))>::trampoline(WebCore::Visitor*, void*) +
141 at Visitor.h:83
    frame #10: 0x06230689
libblink_platform.dylib`WebCore::PersistentNode::trace(this=0x1a86feb0,
visitor=0x18277590) + 57 at Handle.h:123
    frame #11: 0x0622da08
libblink_platform.dylib`WebCore::ThreadState::visitRoots(visitor=0x18277590) +
72 at ThreadState.cpp:416
    frame #12: 0x0621b851
libblink_platform.dylib`WebCore::Heap::collectGarbage(stackState=NoHeapPointersOnStack)
+ 513 at Heap.cpp:1671
    frame #13: 0x0621d802
libblink_platform.dylib`WebCore::Heap::collectAllGarbage() + 66 at Heap.cpp:1705
    frame #14: 0x0622d78f
libblink_platform.dylib`WebCore::ThreadState::cleanup(this=0x1d769390) + 143 at
ThreadState.cpp:375
    frame #15: 0x0622d88f libblink_platform.dylib`WebCore::ThreadState::detach()
+ 47 at ThreadState.cpp:390
    frame #16: 0x09d4c611
libblink_web.dylib`WebCore::WorkerThread::workerThread(this=0x4cd64310) + 993 at
WorkerThread.cpp:160
    frame #17: 0x09d4c20b
libblink_web.dylib`WebCore::WorkerThread::workerThreadStart(thread=0x4cd64310) +
43 at WorkerThread.cpp:102
    frame #18: 0x17aa6d77
libwtf.dylib`WTF::threadEntryPoint(contextData=0x1a89dc90) + 167 at
Threading.cpp:69
    frame #19: 0x17aa760f
libwtf.dylib`WTF::wtfThreadEntryPoint(param=0x1a89b710) + 127 at
ThreadingPthreads.cpp:175
    frame #20: 0x9a2415fb libsystem_pthread.dylib`_pthread_body + 144
    frame #21: 0x9a241485 libsystem_pthread.dylib`_pthread_start + 130

Powered by Google App Engine
This is Rietveld 408576698