Bug 169133

Summary: [iOS] Report domains crashing under memory pressure via enhanced privacy logging.
Product: WebKit Reporter: Andreas Kling <kling>
Component: WebKit Misc.Assignee: Andreas Kling <kling>
Status: RESOLVED FIXED    
Severity: Normal CC: benjamin, buildbot, cdumez, cmarcelo, commit-queue, dbates, kling, rniwa
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch for EWS
none
Patch for EWS 2
none
Patch
none
Archive of layout-test-results from ews100 for mac-elcapitan none

Description Andreas Kling 2017-03-03 08:07:03 PST
<rdar://problem/29964017>

Similar to bug 168797 [Mac] Report domains using abnormally high memory usage via enhanced privacy logging

Let's gather domains where we're crashing under memory pressure.
Comment 1 Andreas Kling 2017-03-03 08:07:35 PST
Created attachment 303317 [details]
Patch for EWS
Comment 2 Chris Dumez 2017-03-03 08:31:28 PST
Comment on attachment 303317 [details]
Patch for EWS

View in context: https://bugs.webkit.org/attachment.cgi?id=303317&action=review

> Source/WebKit2/UIProcess/WebPageProxy.cpp:5289
> +    m_domainAtMemoryPressureStatusChange = domain;

Do we really need this? I would have thought we can get the URL of the page after it has crashed since we are able to reload it. Looking at the reload() code, it looks like we get the URL like so:
    String url = m_pageLoadState.activeURL();
    if (url.isEmpty() && m_backForwardList->currentItem())
        url = m_backForwardList->currentItem()->url();

> Source/WebKit2/UIProcess/WebProcessProxy.cpp:1116
> +    WTFLogAlways("KLING: WebProcessProxy::memoryPressureStatusChanged: %u", isUnderMemoryPressure);

KLING :D
Comment 3 Andreas Kling 2017-03-03 08:44:10 PST
(In reply to comment #2)
> Comment on attachment 303317 [details]
> Patch for EWS
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=303317&action=review
> 
> > Source/WebKit2/UIProcess/WebPageProxy.cpp:5289
> > +    m_domainAtMemoryPressureStatusChange = domain;
> 
> Do we really need this? I would have thought we can get the URL of the page
> after it has crashed since we are able to reload it. Looking at the reload()
> code, it looks like we get the URL like so:
>     String url = m_pageLoadState.activeURL();
>     if (url.isEmpty() && m_backForwardList->currentItem())
>         url = m_backForwardList->currentItem()->url();

Great point! I'll fetch the URL that way instead.

> > Source/WebKit2/UIProcess/WebProcessProxy.cpp:1116
> > +    WTFLogAlways("KLING: WebProcessProxy::memoryPressureStatusChanged: %u", isUnderMemoryPressure);
> 
> KLING :D

Dammit! :D
Comment 4 Andreas Kling 2017-03-03 09:18:20 PST
Created attachment 303324 [details]
Patch for EWS 2
Comment 5 Andreas Kling 2017-03-05 23:57:56 PST
Created attachment 303501 [details]
Patch
Comment 6 Build Bot 2017-03-06 01:07:15 PST
Comment on attachment 303501 [details]
Patch

Attachment 303501 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/3251069

New failing tests:
media/modern-media-controls/tracks-support/tracks-support-show-panel-after-dragging-controls.html
Comment 7 Build Bot 2017-03-06 01:07:19 PST
Created attachment 303504 [details]
Archive of layout-test-results from ews100 for mac-elcapitan

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews100  Port: mac-elcapitan  Platform: Mac OS X 10.11.6
Comment 8 WebKit Commit Bot 2017-03-06 02:02:13 PST
Comment on attachment 303501 [details]
Patch

Clearing flags on attachment: 303501

Committed r213444: <http://trac.webkit.org/changeset/213444>
Comment 9 WebKit Commit Bot 2017-03-06 02:02:18 PST
All reviewed patches have been landed.  Closing bug.