Title: [233808] trunk/Source/WebKit
Revision
233808
Author
[email protected]
Date
2018-07-13 11:47:18 -0700 (Fri, 13 Jul 2018)

Log Message

Add more threading release assertions
https://bugs.webkit.org/show_bug.cgi?id=187647

Reviewed by Alex Christensen.

Add more threading release assertions to help debug <rdar://problem/39265927>.

* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess):
(WebKit::NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess):
* UIProcess/WebProcessProxy.cpp:
(WebKit::m_isInPrewarmedPool):
(WebKit::WebProcessProxy::~WebProcessProxy):
(WebKit::WebProcessProxy::shutDown):
(WebKit::WebProcessProxy::didFinishLaunching):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (233807 => 233808)


--- trunk/Source/WebKit/ChangeLog	2018-07-13 18:28:09 UTC (rev 233807)
+++ trunk/Source/WebKit/ChangeLog	2018-07-13 18:47:18 UTC (rev 233808)
@@ -1,3 +1,21 @@
+2018-07-13  Chris Dumez  <[email protected]>
+
+        Add more threading release assertions
+        https://bugs.webkit.org/show_bug.cgi?id=187647
+
+        Reviewed by Alex Christensen.
+
+        Add more threading release assertions to help debug <rdar://problem/39265927>.
+
+        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
+        (WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess):
+        (WebKit::NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess):
+        * UIProcess/WebProcessProxy.cpp:
+        (WebKit::m_isInPrewarmedPool):
+        (WebKit::WebProcessProxy::~WebProcessProxy):
+        (WebKit::WebProcessProxy::shutDown):
+        (WebKit::WebProcessProxy::didFinishLaunching):
+
 2018-07-13  Christopher Reid  <[email protected]>
 
         [WinCairo] Add windows storage process connection implementation

Modified: trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp (233807 => 233808)


--- trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp	2018-07-13 18:28:09 UTC (rev 233807)
+++ trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp	2018-07-13 18:47:18 UTC (rev 233808)
@@ -74,11 +74,14 @@
     , m_mdnsRegister(*this)
 #endif
 {
+    RELEASE_ASSERT(RunLoop::isMain());
     m_connection->open();
 }
 
 NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess()
 {
+    RELEASE_ASSERT(RunLoop::isMain());
+
     m_connection->invalidate();
 #if USE(LIBWEBRTC)
     if (m_rtcProvider)

Modified: trunk/Source/WebKit/Platform/IPC/Connection.cpp (233807 => 233808)


--- trunk/Source/WebKit/Platform/IPC/Connection.cpp	2018-07-13 18:28:09 UTC (rev 233807)
+++ trunk/Source/WebKit/Platform/IPC/Connection.cpp	2018-07-13 18:47:18 UTC (rev 233808)
@@ -936,7 +936,7 @@
 
 void Connection::dispatchMessage(Decoder& decoder)
 {
-    ASSERT(isValid());
+    RELEASE_ASSERT(isValid());
     m_client.didReceiveMessage(*this, decoder);
 }
 

Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp (233807 => 233808)


--- trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp	2018-07-13 18:28:09 UTC (rev 233807)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp	2018-07-13 18:47:18 UTC (rev 233808)
@@ -128,6 +128,8 @@
 #endif
     , m_isInPrewarmedPool(isInPrewarmedPool == IsInPrewarmedPool::Yes)
 {
+    RELEASE_ASSERT(RunLoop::isMain());
+
     auto result = allProcesses().add(coreProcessIdentifier(), this);
     ASSERT_UNUSED(result, result.isNewEntry);
 
@@ -136,6 +138,7 @@
 
 WebProcessProxy::~WebProcessProxy()
 {
+    RELEASE_ASSERT(RunLoop::isMain());
     ASSERT(m_pageURLRetainCountMap.isEmpty());
 
     auto result = allProcesses().remove(coreProcessIdentifier());
@@ -207,6 +210,8 @@
 
 void WebProcessProxy::shutDown()
 {
+    RELEASE_ASSERT(RunLoop::isMain());
+
     shutDownProcess();
 
     if (m_webConnection) {
@@ -751,6 +756,8 @@
 
 void WebProcessProxy::didFinishLaunching(ProcessLauncher* launcher, IPC::Connection::Identifier connectionIdentifier)
 {
+    RELEASE_ASSERT(RunLoop::isMain());
+
     ChildProcessProxy::didFinishLaunching(launcher, connectionIdentifier);
 
     if (!IPC::Connection::identifierIsValid(connectionIdentifier)) {
@@ -764,6 +771,7 @@
         page->processDidFinishLaunching();
     }
 
+    RELEASE_ASSERT(!m_webConnection);
     m_webConnection = WebConnectionToWebProcess::create(this);
 
     m_processPool->processDidFinishLaunching(this);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to