Title: [239622] trunk/Source/WebKit
Revision
239622
Author
[email protected]
Date
2019-01-04 11:02:00 -0800 (Fri, 04 Jan 2019)

Log Message

Bring back parent processID for logging
https://bugs.webkit.org/show_bug.cgi?id=193121
<rdar://problem/47031634>

Reviewed by Alex Christensen.

Bug 192961 removes presentingApplicationPID from
NetworkProcessCreationParameters because it was (a) stored in some
global state, the use of which is being minimized, and (b) it was
largely unused. However, it was actually still being used in some
useful logging in order to tie together child processes with their
parent process. Re-introduce this value in NetworkLoadParameters so
that we can log it.

* NetworkProcess/NetworkLoadParameters.h:
* NetworkProcess/NetworkResourceLoadParameters.cpp:
(WebKit::NetworkResourceLoadParameters::encode const):
(WebKit::NetworkResourceLoadParameters::decode):
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::start):
* WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):
(WebKit::WebLoaderStrategy::loadResourceSynchronously):
(WebKit::WebLoaderStrategy::startPingLoad):
(WebKit::WebLoaderStrategy::preconnectTo):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (239621 => 239622)


--- trunk/Source/WebKit/ChangeLog	2019-01-04 19:00:52 UTC (rev 239621)
+++ trunk/Source/WebKit/ChangeLog	2019-01-04 19:02:00 UTC (rev 239622)
@@ -1,3 +1,31 @@
+2019-01-04  Keith Rollin  <[email protected]>
+
+        Bring back parent processID for logging
+        https://bugs.webkit.org/show_bug.cgi?id=193121
+        <rdar://problem/47031634>
+
+        Reviewed by Alex Christensen.
+
+        Bug 192961 removes presentingApplicationPID from
+        NetworkProcessCreationParameters because it was (a) stored in some
+        global state, the use of which is being minimized, and (b) it was
+        largely unused. However, it was actually still being used in some
+        useful logging in order to tie together child processes with their
+        parent process. Re-introduce this value in NetworkLoadParameters so
+        that we can log it.
+
+        * NetworkProcess/NetworkLoadParameters.h:
+        * NetworkProcess/NetworkResourceLoadParameters.cpp:
+        (WebKit::NetworkResourceLoadParameters::encode const):
+        (WebKit::NetworkResourceLoadParameters::decode):
+        * NetworkProcess/NetworkResourceLoader.cpp:
+        (WebKit::NetworkResourceLoader::start):
+        * WebProcess/Network/WebLoaderStrategy.cpp:
+        (WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):
+        (WebKit::WebLoaderStrategy::loadResourceSynchronously):
+        (WebKit::WebLoaderStrategy::startPingLoad):
+        (WebKit::WebLoaderStrategy::preconnectTo):
+
 2019-01-04  Youenn Fablet  <[email protected]>
 
         Make RestrictedHTTPResponseAccess an internal flag

Modified: trunk/Source/WebKit/NetworkProcess/NetworkLoadParameters.h (239621 => 239622)


--- trunk/Source/WebKit/NetworkProcess/NetworkLoadParameters.h	2019-01-04 19:00:52 UTC (rev 239621)
+++ trunk/Source/WebKit/NetworkProcess/NetworkLoadParameters.h	2019-01-04 19:02:00 UTC (rev 239622)
@@ -30,6 +30,7 @@
 #include <WebCore/ResourceLoaderOptions.h>
 #include <WebCore/ResourceRequest.h>
 #include <pal/SessionID.h>
+#include <wtf/ProcessID.h>
 
 namespace WebKit {
 
@@ -39,6 +40,7 @@
 public:
     uint64_t webPageID { 0 };
     uint64_t webFrameID { 0 };
+    WTF::ProcessID parentPID { 0 };
     PAL::SessionID sessionID { PAL::SessionID::emptySessionID() };
     WebCore::ResourceRequest request;
     WebCore::ContentSniffingPolicy contentSniffingPolicy { WebCore::ContentSniffingPolicy::SniffContent };

Modified: trunk/Source/WebKit/NetworkProcess/NetworkResourceLoadParameters.cpp (239621 => 239622)


--- trunk/Source/WebKit/NetworkProcess/NetworkResourceLoadParameters.cpp	2019-01-04 19:00:52 UTC (rev 239621)
+++ trunk/Source/WebKit/NetworkProcess/NetworkResourceLoadParameters.cpp	2019-01-04 19:02:00 UTC (rev 239622)
@@ -36,6 +36,7 @@
     encoder << identifier;
     encoder << webPageID;
     encoder << webFrameID;
+    encoder << parentPID;
     encoder << sessionID;
     encoder << request;
 
@@ -113,6 +114,9 @@
     if (!decoder.decode(result.webFrameID))
         return false;
 
+    if (!decoder.decode(result.parentPID))
+        return false;
+
     if (!decoder.decode(result.sessionID))
         return false;
 

Modified: trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp (239621 => 239622)


--- trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp	2019-01-04 19:00:52 UTC (rev 239621)
+++ trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp	2019-01-04 19:02:00 UTC (rev 239622)
@@ -171,7 +171,7 @@
     m_networkActivityTracker = m_connection->startTrackingResourceLoad(m_parameters.webPageID, m_parameters.identifier, isMainResource(), sessionID());
 
     if (m_defersLoading) {
-        RELEASE_LOG_IF_ALLOWED("start: Loading is deferred (pageID = %" PRIu64 ", frameID = %" PRIu64 ", resourceID = %" PRIu64 ", isMainResource = %d, isSynchronous = %d)", m_parameters.webPageID, m_parameters.webFrameID, m_parameters.identifier, isMainResource(), isSynchronous());
+        RELEASE_LOG_IF_ALLOWED("start: Loading is deferred (pageID = %" PRIu64 ", frameID = %" PRIu64 ", resourceID = %" PRIu64 ", isMainResource = %d, isSynchronous = %d, parentPID = %d)", m_parameters.webPageID, m_parameters.webFrameID, m_parameters.identifier, isMainResource(), isSynchronous(), m_parameters.parentPID);
         return;
     }
 
@@ -182,6 +182,7 @@
         m_networkLoadChecker->check(ResourceRequest { originalRequest() }, this, [this] (auto&& result) {
             WTF::switchOn(result,
                 [this] (ResourceError& error) {
+                    RELEASE_LOG_IF_ALLOWED("start: error checking (pageID = %" PRIu64 ", frameID = %" PRIu64 ", resourceID = %" PRIu64 ", isMainResource = %d, isSynchronous = %d, parentPID = %d, error.domain = %{public}s, error.code = %d)", m_parameters.webPageID, m_parameters.webFrameID, m_parameters.identifier, this->isMainResource(), this->isSynchronous(), m_parameters.parentPID, error.domain().utf8().data(), error.errorCode());
                     if (!error.isCancellation())
                         this->didFailLoading(error);
                 },
@@ -188,11 +189,11 @@
                 [this] (NetworkLoadChecker::RedirectionTriplet& triplet) {
                     this->m_isWaitingContinueWillSendRequestForCachedRedirect = true;
                     this->willSendRedirectedRequest(WTFMove(triplet.request), WTFMove(triplet.redirectRequest), WTFMove(triplet.redirectResponse));
-                    RELEASE_LOG_IF_ALLOWED("NetworkResourceLoader: synthetic redirect sent because request URL was modified.");
+                    RELEASE_LOG_IF_ALLOWED("start: synthetic redirect sent because request URL was modified (pageID = %" PRIu64 ", frameID = %" PRIu64 ", resourceID = %" PRIu64 ", isMainResource = %d, isSynchronous = %d, parentPID = %d)", m_parameters.webPageID, m_parameters.webFrameID, m_parameters.identifier, this->isMainResource(), this->isSynchronous(), m_parameters.parentPID);
                 },
                 [this] (ResourceRequest& request) {
                     if (this->canUseCache(request)) {
-                        RELEASE_LOG_IF_ALLOWED("start: Checking cache for resource (pageID = %" PRIu64 ", frameID = %" PRIu64 ", resourceID = %" PRIu64 ", isMainResource = %d, isSynchronous = %d)", m_parameters.webPageID, m_parameters.webFrameID, m_parameters.identifier, this->isMainResource(), this->isSynchronous());
+                        RELEASE_LOG_IF_ALLOWED("start: Checking cache for resource (pageID = %" PRIu64 ", frameID = %" PRIu64 ", resourceID = %" PRIu64 ", isMainResource = %d, isSynchronous = %d, parentPID = %d)", m_parameters.webPageID, m_parameters.webFrameID, m_parameters.identifier, this->isMainResource(), this->isSynchronous(), m_parameters.parentPID);
                         this->retrieveCacheEntry(request);
                         return;
                     }
@@ -205,7 +206,7 @@
     }
     // FIXME: Remove that code path once m_networkLoadChecker is used for all network loads.
     if (canUseCache(originalRequest())) {
-        RELEASE_LOG_IF_ALLOWED("start: Checking cache for resource (pageID = %" PRIu64 ", frameID = %" PRIu64 ", resourceID = %" PRIu64 ", isMainResource = %d, isSynchronous = %d)", m_parameters.webPageID, m_parameters.webFrameID, m_parameters.identifier, isMainResource(), isSynchronous());
+        RELEASE_LOG_IF_ALLOWED("start: Checking cache for resource (pageID = %" PRIu64 ", frameID = %" PRIu64 ", resourceID = %" PRIu64 ", isMainResource = %d, isSynchronous = %d, parentPID = %d)", m_parameters.webPageID, m_parameters.webFrameID, m_parameters.identifier, isMainResource(), isSynchronous(), m_parameters.parentPID);
         retrieveCacheEntry(originalRequest());
         return;
     }

Modified: trunk/Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp (239621 => 239622)


--- trunk/Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp	2019-01-04 19:00:52 UTC (rev 239621)
+++ trunk/Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp	2019-01-04 19:02:00 UTC (rev 239622)
@@ -61,6 +61,7 @@
 #include <WebCore/PlatformStrategies.h>
 #include <WebCore/ReferrerPolicy.h>
 #include <WebCore/ResourceLoader.h>
+#include <WebCore/RuntimeApplicationChecks.h>
 #include <WebCore/RuntimeEnabledFeatures.h>
 #include <WebCore/SecurityOrigin.h>
 #include <WebCore/Settings.h>
@@ -268,6 +269,7 @@
     loadParameters.identifier = identifier;
     loadParameters.webPageID = trackingParameters.pageID;
     loadParameters.webFrameID = trackingParameters.frameID;
+    loadParameters.parentPID = presentingApplicationPID();
     loadParameters.sessionID = sessionID;
     loadParameters.request = request;
     loadParameters.contentSniffingPolicy = contentSniffingPolicy;
@@ -531,6 +533,7 @@
     loadParameters.identifier = resourceLoadIdentifier;
     loadParameters.webPageID = pageID;
     loadParameters.webFrameID = frameID;
+    loadParameters.parentPID = presentingApplicationPID();
     loadParameters.sessionID = sessionID;
     loadParameters.request = request;
     loadParameters.contentSniffingPolicy = ContentSniffingPolicy::SniffContent;
@@ -585,6 +588,7 @@
     loadParameters.identifier = generateLoadIdentifier();
     loadParameters.request = request;
     loadParameters.sourceOrigin = &document->securityOrigin();
+    loadParameters.parentPID = presentingApplicationPID();
     loadParameters.sessionID = frame.page() ? frame.page()->sessionID() : PAL::SessionID::defaultSessionID();
     loadParameters.storedCredentialsPolicy = options.credentials == FetchOptions::Credentials::Omit ? StoredCredentialsPolicy::DoNotUse : StoredCredentialsPolicy::Use;
     loadParameters.options = options;
@@ -644,6 +648,7 @@
     parameters.request = ResourceRequest { url };
     parameters.webPageID = webPage ? webPage->pageID() : 0;
     parameters.webFrameID = webFrame ? webFrame->frameID() : 0;
+    parameters.parentPID = presentingApplicationPID();
     parameters.sessionID = webPage ? webPage->sessionID() : PAL::SessionID::defaultSessionID();
     parameters.storedCredentialsPolicy = storedCredentialsPolicy;
     parameters.shouldPreconnectOnly = PreconnectOnly::Yes;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to