Diff
Modified: trunk/Source/WebKit2/ChangeLog (138300 => 138301)
--- trunk/Source/WebKit2/ChangeLog 2012-12-20 22:17:05 UTC (rev 138300)
+++ trunk/Source/WebKit2/ChangeLog 2012-12-20 22:20:31 UTC (rev 138301)
@@ -1,3 +1,28 @@
+2012-12-20 Brady Eidson <beid...@apple.com>
+
+ NetworkProcess has no need for suspend/resumePendingRequests.
+ <rdar://problem/12866005> and https://bugs.webkit.org/show_bug.cgi?id=105550
+
+ Reviewed by Alexey Proskuryakov.
+
+ suspend/resumePendingRequests were important in a single-process, WebKit1 API world to help prevent
+ client callbacks from occurring during layout/painting.
+
+ In a WebKit2 + NetworkProcess world, they aren't important.
+
+ Remove the Web->Network process messages:
+ * NetworkProcess/NetworkConnectionToWebProcess.cpp:
+ * NetworkProcess/NetworkConnectionToWebProcess.h:
+ * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
+ * NetworkProcess/NetworkResourceLoadScheduler.cpp:
+ * NetworkProcess/NetworkResourceLoadScheduler.h:
+
+ For now, still keep the per-WebProcess count to help keep servePendingRequest working as WebCore intends:
+ * WebProcess/Network/WebResourceLoadScheduler.cpp:
+ (WebKit::WebResourceLoadScheduler::servePendingRequests):
+ (WebKit::WebResourceLoadScheduler::suspendPendingRequests):
+ (WebKit::WebResourceLoadScheduler::resumePendingRequests):
+
2012-12-20 Carlos Garcia Campos <cgar...@igalia.com>
[GTK] Add API to set a TLS errors policy to WebKit2 GTK+ API
Modified: trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp (138300 => 138301)
--- trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp 2012-12-20 22:17:05 UTC (rev 138300)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp 2012-12-20 22:20:31 UTC (rev 138301)
@@ -139,16 +139,6 @@
NetworkProcess::shared().networkResourceLoadScheduler().servePendingRequests(static_cast<ResourceLoadPriority>(resourceLoadPriority));
}
-void NetworkConnectionToWebProcess::suspendPendingRequests()
-{
- NetworkProcess::shared().networkResourceLoadScheduler().suspendPendingRequests();
-}
-
-void NetworkConnectionToWebProcess::resumePendingRequests()
-{
- NetworkProcess::shared().networkResourceLoadScheduler().resumePendingRequests();
-}
-
void NetworkConnectionToWebProcess::setSerialLoadingEnabled(bool enabled)
{
m_serialLoadingEnabled = enabled;
Modified: trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.h (138300 => 138301)
--- trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.h 2012-12-20 22:17:05 UTC (rev 138300)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.h 2012-12-20 22:20:31 UTC (rev 138301)
@@ -83,8 +83,6 @@
void removeLoadIdentifier(ResourceLoadIdentifier);
void crossOriginRedirectReceived(ResourceLoadIdentifier, const WebCore::KURL& redirectURL);
void servePendingRequests(uint32_t resourceLoadPriority);
- void suspendPendingRequests();
- void resumePendingRequests();
void setSerialLoadingEnabled(bool);
void startDownload(bool privateBrowsingEnabled, uint64_t downloadID, const WebCore::ResourceRequest&);
void cookiesForDOM(bool privateBrowsingEnabled, const WebCore::KURL& firstParty, const WebCore::KURL&, String& result);
Modified: trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.messages.in (138300 => 138301)
--- trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.messages.in 2012-12-20 22:17:05 UTC (rev 138300)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.messages.in 2012-12-20 22:20:31 UTC (rev 138301)
@@ -33,9 +33,6 @@
RemoveLoadIdentifier(uint64_t resourceLoadIdentifier)
ServePendingRequests(uint32_t resourceLoadPriority)
-
- SuspendPendingRequests() -> ()
- ResumePendingRequests() -> ()
SetSerialLoadingEnabled(bool enabled) -> ()
Modified: trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoadScheduler.cpp (138300 => 138301)
--- trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoadScheduler.cpp 2012-12-20 22:17:05 UTC (rev 138300)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoadScheduler.cpp 2012-12-20 22:20:31 UTC (rev 138301)
@@ -209,22 +209,6 @@
}
}
-void NetworkResourceLoadScheduler::suspendPendingRequests()
-{
- ++m_suspendPendingRequestsCount;
-}
-
-void NetworkResourceLoadScheduler::resumePendingRequests()
-{
- ASSERT(m_suspendPendingRequestsCount);
- --m_suspendPendingRequestsCount;
- if (m_suspendPendingRequestsCount)
- return;
-
- if (!m_hosts.isEmpty() || m_nonHTTPProtocolHost->hasRequests())
- scheduleServePendingRequests();
-}
-
static bool removeScheduledLoadIdentifiersCalled = false;
void NetworkResourceLoadScheduler::removeScheduledLoadIdentifiers(void* context)
Modified: trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoadScheduler.h (138300 => 138301)
--- trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoadScheduler.h 2012-12-20 22:17:05 UTC (rev 138300)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoadScheduler.h 2012-12-20 22:20:31 UTC (rev 138301)
@@ -61,8 +61,6 @@
void receivedRedirect(ResourceLoadIdentifier, const WebCore::KURL& redirectURL);
void servePendingRequests(WebCore::ResourceLoadPriority = WebCore::ResourceLoadPriorityVeryLow);
- void suspendPendingRequests();
- void resumePendingRequests();
NetworkResourceLoader* networkResourceLoaderForIdentifier(ResourceLoadIdentifier);
Modified: trunk/Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.cpp (138300 => 138301)
--- trunk/Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.cpp 2012-12-20 22:17:05 UTC (rev 138300)
+++ trunk/Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.cpp 2012-12-20 22:20:31 UTC (rev 138301)
@@ -162,8 +162,8 @@
{
LOG(NetworkScheduling, "(WebProcess) WebResourceLoadScheduler::servePendingRequests");
- // If this WebProcess has its own request suspension count then we don't even
- // have to bother messaging the NetworkProcess.
+ // The NetworkProcess scheduler is good at making sure loads are serviced until there are no more pending requests.
+ // If this WebProcess isn't expecting requests to be served then we can ignore messaging the NetworkProcess right now.
if (m_suspendPendingRequestsCount)
return;
@@ -172,15 +172,11 @@
void WebResourceLoadScheduler::suspendPendingRequests()
{
- WebProcess::shared().networkConnection()->connection()->sendSync(Messages::NetworkConnectionToWebProcess::SuspendPendingRequests(), Messages::NetworkConnectionToWebProcess::SuspendPendingRequests::Reply(), 0);
-
++m_suspendPendingRequestsCount;
}
void WebResourceLoadScheduler::resumePendingRequests()
{
- WebProcess::shared().networkConnection()->connection()->sendSync(Messages::NetworkConnectionToWebProcess::ResumePendingRequests(), Messages::NetworkConnectionToWebProcess::ResumePendingRequests::Reply(), 0);
-
ASSERT(m_suspendPendingRequestsCount);
--m_suspendPendingRequestsCount;
}