Bug 187558 - Make process-swap-on-navigation an experimental feature
Summary: Make process-swap-on-navigation an experimental feature
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Brady Eidson
URL:
Keywords: InRadar
Depends on: 187568
Blocks:
  Show dependency treegraph
 
Reported: 2018-07-11 11:42 PDT by Brady Eidson
Modified: 2018-07-12 16:37 PDT (History)
6 users (show)

See Also:


Attachments
Patch (3.33 KB, patch)
2018-07-11 12:45 PDT, Brady Eidson
no flags Details | Formatted Diff | Diff
Patch (3.22 KB, patch)
2018-07-11 13:07 PDT, Brady Eidson
no flags Details | Formatted Diff | Diff
Patch (6.68 KB, patch)
2018-07-11 20:12 PDT, Brady Eidson
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from ews105 for mac-sierra-wk2 (2.84 MB, application/zip)
2018-07-11 21:30 PDT, EWS Watchlist
no flags Details
Archive of layout-test-results from ews205 for win-future (12.79 MB, application/zip)
2018-07-11 21:55 PDT, EWS Watchlist
no flags Details
Archive of layout-test-results from ews126 for ios-simulator-wk2 (2.24 MB, application/zip)
2018-07-11 22:03 PDT, EWS Watchlist
no flags Details
Patch (8.25 KB, patch)
2018-07-12 12:15 PDT, Brady Eidson
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Brady Eidson 2018-07-11 11:42:28 PDT
Make process-swap-on-navigation an experimental feature

This is so it can show up in Safari/SafariTechnologyPreviews menus automatically
Comment 1 Brady Eidson 2018-07-11 11:42:43 PDT
<rdar://problem/41995053>
Comment 2 Brady Eidson 2018-07-11 11:43:54 PDT
Have a WIP but having problems verifying its working for various other reasons related to the state of the tree *sigh*
Comment 3 Brady Eidson 2018-07-11 12:41:31 PDT
(In reply to Brady Eidson from comment #2)
> Have a WIP but having problems verifying its working for various other
> reasons related to the state of the tree *sigh*

More precisely, the state of process swapping in the tree.

There's been regressions in process swapping apparently uncaught by the existing layouttests and API tests.
Comment 4 Brady Eidson 2018-07-11 12:45:36 PDT
Created attachment 344777 [details]
Patch
Comment 5 Geoffrey Garen 2018-07-11 12:56:59 PDT
Comment on attachment 344777 [details]
Patch

r=me
Comment 6 Chris Dumez 2018-07-11 12:59:25 PDT
Comment on attachment 344777 [details]
Patch

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

> Source/WebKit/UIProcess/WebPreferences.cpp:139
> +            pools.add(&page->process().processPool());

I think technically, it wouldn't hurt to call setProcessSwapsOnNavigation() on the process pool here right away. Not convinced it is worth using a HashSet here.
Comment 7 Brady Eidson 2018-07-11 13:05:53 PDT
(In reply to Chris Dumez from comment #6)
> Comment on attachment 344777 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=344777&action=review
> 
> > Source/WebKit/UIProcess/WebPreferences.cpp:139
> > +            pools.add(&page->process().processPool());
> 
> I think technically, it wouldn't hurt to call setProcessSwapsOnNavigation()
> on the process pool here right away. Not convinced it is worth using a
> HashSet here.

Hmmmmm  Yah, it's a tough call.

"Normal" case not worth it.

Extreme case probably worth it.

I'll change it.
Comment 8 Brady Eidson 2018-07-11 13:07:51 PDT
Created attachment 344779 [details]
Patch
Comment 9 WebKit Commit Bot 2018-07-11 13:47:11 PDT
Comment on attachment 344779 [details]
Patch

Clearing flags on attachment: 344779

Committed r233741: <https://trac.webkit.org/changeset/233741>
Comment 10 WebKit Commit Bot 2018-07-11 13:47:13 PDT
All reviewed patches have been landed.  Closing bug.
Comment 11 Ryan Haddad 2018-07-11 16:34:41 PDT
This seems to be causing (at least) the Sierra testers to run out of processes while running layout tests:
https://build.webkit.org/builders/Apple%20Sierra%20Release%20WK2%20%28Tests%29/builds/10502
Comment 12 WebKit Commit Bot 2018-07-11 17:06:05 PDT
Re-opened since this is blocked by bug 187568
Comment 13 Brady Eidson 2018-07-11 20:12:32 PDT
Created attachment 344814 [details]
Patch
Comment 14 Brady Eidson 2018-07-11 20:16:45 PDT
(In reply to Ryan Haddad from comment #11)
> This seems to be causing (at least) the Sierra testers to run out of
> processes while running layout tests:
> https://build.webkit.org/builders/
> Apple%20Sierra%20Release%20WK2%20%28Tests%29/builds/10502

For those who weren't on IRC earlier:
This is because WebKitTestRunner always turns on all experimental features, so by making this an experimental feature it was getting turned on against my intent.
Comment 15 EWS Watchlist 2018-07-11 21:30:26 PDT
Comment on attachment 344814 [details]
Patch

Attachment 344814 [details] did not pass mac-wk2-ews (mac-wk2):
Output: https://webkit-queues.webkit.org/results/8511681

New failing tests:
http/tests/navigation/process-swap-window-open.html
Comment 16 EWS Watchlist 2018-07-11 21:30:28 PDT
Created attachment 344820 [details]
Archive of layout-test-results from ews105 for mac-sierra-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews105  Port: mac-sierra-wk2  Platform: Mac OS X 10.12.6
Comment 17 EWS Watchlist 2018-07-11 21:55:35 PDT
Comment on attachment 344814 [details]
Patch

Attachment 344814 [details] did not pass win-ews (win):
Output: https://webkit-queues.webkit.org/results/8511768

New failing tests:
http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-video.html
Comment 18 EWS Watchlist 2018-07-11 21:55:48 PDT
Created attachment 344824 [details]
Archive of layout-test-results from ews205 for win-future

The attached test failures were seen while running run-webkit-tests on the win-ews.
Bot: ews205  Port: win-future  Platform: CYGWIN_NT-6.1-2.9.0-0.318-5-3-x86_64-64bit
Comment 19 EWS Watchlist 2018-07-11 22:03:14 PDT
Comment on attachment 344814 [details]
Patch

Attachment 344814 [details] did not pass ios-sim-ews (ios-simulator-wk2):
Output: https://webkit-queues.webkit.org/results/8511727

New failing tests:
http/tests/navigation/process-swap-window-open.html
Comment 20 EWS Watchlist 2018-07-11 22:03:16 PDT
Created attachment 344825 [details]
Archive of layout-test-results from ews126 for ios-simulator-wk2

The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews126  Port: ios-simulator-wk2  Platform: Mac OS X 10.13.4
Comment 21 Brady Eidson 2018-07-12 12:15:16 PDT
Created attachment 344870 [details]
Patch
Comment 22 WebKit Commit Bot 2018-07-12 16:37:17 PDT
Comment on attachment 344870 [details]
Patch

Clearing flags on attachment: 344870

Committed r233786: <https://trac.webkit.org/changeset/233786>
Comment 23 WebKit Commit Bot 2018-07-12 16:37:19 PDT
All reviewed patches have been landed.  Closing bug.