Bug 153880 - Web Inspector: Give nested inspectors their own process pool
Summary: Web Inspector: Give nested inspectors their own process pool
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Web Inspector (show other bugs)
Version: WebKit Nightly Build
Hardware: All All
: P2 Normal
Assignee: Joseph Pecoraro
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2016-02-04 11:45 PST by Joseph Pecoraro
Modified: 2016-02-04 13:02 PST (History)
9 users (show)

See Also:


Attachments
[PATCH] Proposed Fix (6.22 KB, patch)
2016-02-04 11:50 PST, Joseph Pecoraro
timothy: review-
Details | Formatted Diff | Diff
[PATCH] Proposed Fix (6.22 KB, patch)
2016-02-04 12:12 PST, Joseph Pecoraro
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Joseph Pecoraro 2016-02-04 11:45:17 PST
* SUMMARY
Give nested inspectors their own process pool.

When inspecting the inspector, in order for profiling information to be useful the inspector¹ and inspector² should be in separate processes (or at least not share the same VM). When sampling I was seeing JavaScript running in both inspectors in the sample, because they were sharing the same process and VM.
Comment 1 Radar WebKit Bug Importer 2016-02-04 11:46:29 PST
<rdar://problem/24508310>
Comment 2 Joseph Pecoraro 2016-02-04 11:50:39 PST
Created attachment 270676 [details]
[PATCH] Proposed Fix

We could create a Vector for pools per level, but I think just 2 pools is fine for now.

Needs a WK2 Owner nod.
Comment 3 Timothy Hatcher 2016-02-04 11:56:49 PST
Comment on attachment 270676 [details]
[PATCH] Proposed Fix

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

> Source/WebKit2/UIProcess/WebInspectorProxy.cpp:314
> +    WebProcessPool* pool = inspectionLevel == 1 ? s_mainInspectorProcessPool : s_nestedInspectorProcessPool;

I think this needs to be a reference or a ** to make the later assignment work right. As it stands, I suspect this makes a new pool each time and s_mainInspectorProcessPool / s_nestedInspectorProcessPool are always null.
Comment 4 Joseph Pecoraro 2016-02-04 12:12:22 PST
Created attachment 270683 [details]
[PATCH] Proposed Fix
Comment 5 WebKit Commit Bot 2016-02-04 13:02:31 PST
Comment on attachment 270683 [details]
[PATCH] Proposed Fix

Clearing flags on attachment: 270683

Committed r196142: <http://trac.webkit.org/changeset/196142>
Comment 6 WebKit Commit Bot 2016-02-04 13:02:34 PST
All reviewed patches have been landed.  Closing bug.