Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Issue 847803002: Make ScriptStreamer and dependents Oilpan friendly. (Closed)

Created:
5 years, 11 months ago by sof
Modified:
5 years, 11 months ago
CC:
blink-reviews, eae+blinkwatch, apavlov+blink_chromium.org, aandrey+blink_chromium.org, rwlbuis, caseq+blink_chromium.org, arv+blink, malch+blink_chromium.org, yurys+blink_chromium.org, blink-reviews-dom_chromium.org, dglazkov+blink, blink-reviews-bindings_chromium.org, devtools-reviews_chromium.org, loislo+blink_chromium.org, Mads Ager (chromium), lushnikov+blink_chromium.org, eustas+blink_chromium.org, paulirish+reviews_chromium.org, vsevik+blink_chromium.org, pfeldman+blink_chromium.org, oilpan-reviews, sergeyv+blink_chromium.org, kouhei+heap_chromium.org
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Make ScriptStreamer and dependents Oilpan friendly. As ScriptStreamer has a reference to a GCed ScriptResource, turn ScriptStreamer into a GCed object also. Transitively, ScriptSourceCode and other objects that refer to those need to be moved to the Oilpan heap also. R=haraken BUG=340515 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=188816

Patch Set 1 #

Patch Set 2 : non Oilpan compile fixes #

Patch Set 3 : rebase #

Patch Set 4 : rebased #

Patch Set 5 : rebased #

Patch Set 6 : nullptr tidying #

Total comments: 7

Patch Set 7 : Encode a null script source directly via ScriptSourceCode #

Patch Set 8 : another rebase #

Total comments: 2

Patch Set 9 : Add ScriptSourceCode::isNull() comment #

Unified diffs Side-by-side diffs Delta from patch set Stats (+273 lines, -124 lines) Patch
M Source/bindings/core/v8/Dictionary.h View 1 2 3 4 5 1 chunk +0 lines, -2 lines 0 comments Download
M Source/bindings/core/v8/PageScriptDebugServer.h View 1 2 3 4 5 6 3 chunks +8 lines, -7 lines 0 comments Download
M Source/bindings/core/v8/PageScriptDebugServer.cpp View 1 2 3 4 5 6 6 chunks +23 lines, -11 lines 0 comments Download
M Source/bindings/core/v8/ScheduledAction.h View 2 chunks +5 lines, -3 lines 0 comments Download
M Source/bindings/core/v8/ScheduledAction.cpp View 1 chunk +9 lines, -4 lines 0 comments Download
M Source/bindings/core/v8/ScriptController.h View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M Source/bindings/core/v8/ScriptController.cpp View 1 2 3 4 5 6 7 2 chunks +3 lines, -3 lines 0 comments Download
M Source/bindings/core/v8/ScriptDebugServer.h View 1 2 3 4 5 6 3 chunks +5 lines, -3 lines 0 comments Download
M Source/bindings/core/v8/ScriptDebugServer.cpp View 1 2 3 4 5 6 2 chunks +6 lines, -2 lines 0 comments Download
M Source/bindings/core/v8/ScriptPreprocessor.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/bindings/core/v8/ScriptSourceCode.h View 1 2 3 4 5 6 7 8 1 chunk +22 lines, -35 lines 0 comments Download
A Source/bindings/core/v8/ScriptSourceCode.cpp View 1 2 3 4 5 6 1 chunk +76 lines, -0 lines 0 comments Download
M Source/bindings/core/v8/ScriptStreamer.h View 3 chunks +11 lines, -2 lines 0 comments Download
M Source/bindings/core/v8/ScriptStreamer.cpp View 3 chunks +11 lines, -2 lines 0 comments Download
M Source/bindings/core/v8/ScriptStreamerTest.cpp View 1 1 chunk +1 line, -0 lines 0 comments Download
M Source/bindings/core/v8/V8PerIsolateData.cpp View 1 chunk +1 line, -0 lines 0 comments Download
M Source/bindings/core/v8/WorkerScriptDebugServer.h View 2 chunks +9 lines, -3 lines 0 comments Download
M Source/bindings/core/v8/WorkerScriptDebugServer.cpp View 2 chunks +6 lines, -1 line 0 comments Download
M Source/bindings/core/v8/v8.gypi View 3 4 7 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/dom/Document.cpp View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/dom/PendingScript.h View 1 5 chunks +4 lines, -5 lines 0 comments Download
M Source/core/dom/PendingScript.cpp View 1 3 chunks +7 lines, -1 line 0 comments Download
M Source/core/frame/DOMTimer.h View 1 2 3 4 5 6 3 chunks +4 lines, -4 lines 0 comments Download
M Source/core/frame/DOMTimer.cpp View 1 2 3 4 5 6 4 chunks +4 lines, -3 lines 0 comments Download
M Source/core/frame/DOMTimerCoordinator.h View 1 2 3 4 5 3 chunks +2 lines, -3 lines 0 comments Download
M Source/core/frame/DOMTimerCoordinator.cpp View 1 2 3 4 5 6 2 chunks +2 lines, -1 line 0 comments Download
M Source/core/frame/DOMWindowTimers.cpp View 4 chunks +4 lines, -4 lines 0 comments Download
M Source/core/frame/LocalDOMWindow.cpp View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/inspector/InspectorDebuggerAgent.h View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
M Source/core/inspector/InspectorDebuggerAgent.cpp View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
M Source/core/inspector/InspectorInstrumentation.cpp View 1 2 3 4 5 6 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/inspector/InspectorInstrumentationCustomInl.h View 1 2 3 4 5 6 2 chunks +5 lines, -5 lines 0 comments Download
M Source/core/inspector/PageDebuggerAgent.h View 1 chunk +1 line, -2 lines 0 comments Download
M Source/core/inspector/PageDebuggerAgent.cpp View 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/inspector/WorkerInspectorController.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/inspector/WorkerInspectorController.cpp View 1 2 3 4 5 6 2 chunks +2 lines, -1 line 0 comments Download
M Source/core/loader/WorkerLoaderClientBridge.cpp View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M Source/core/loader/WorkerLoaderClientBridgeSyncHelper.cpp View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M Source/core/workers/WorkerGlobalScope.cpp View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M Source/modules/notifications/Notification.cpp View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M Source/platform/heap/Heap.h View 1 2 3 4 5 6 1 chunk +6 lines, -0 lines 0 comments Download
M Source/web/SpellCheckerClientImpl.cpp View 1 chunk +1 line, -0 lines 0 comments Download
M Source/web/SuspendableScriptExecutor.h View 2 chunks +3 lines, -3 lines 0 comments Download
M Source/web/SuspendableScriptExecutor.cpp View 1 2 3 4 5 4 chunks +6 lines, -2 lines 0 comments Download
M Source/web/WebLocalFrameImpl.cpp View 1 2 3 4 7 3 chunks +4 lines, -4 lines 0 comments Download
M Source/web/WebPluginContainerImpl.cpp View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M Source/web/WebViewImpl.h View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M Source/web/tests/ActivityLoggerTest.cpp View 1 2 3 4 5 2 chunks +2 lines, -1 line 0 comments Download

Messages

Total messages: 21 (4 generated)
sof
Please take a look. (Not very high priority, but moving towards fewer off-heap is worthwhile.)
5 years, 11 months ago (2015-01-21 15:11:53 UTC) #2
haraken
Looks nice; let me take a detailed look tomorrow morning.
5 years, 11 months ago (2015-01-21 15:25:16 UTC) #3
haraken
LGTM with a comment. https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/PageScriptDebugServer.h File Source/bindings/core/v8/PageScriptDebugServer.h (right): https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/PageScriptDebugServer.h#newcode72 Source/bindings/core/v8/PageScriptDebugServer.h:72: Nullable<ScriptSourceCode> preprocess(LocalFrame*, const ScriptSourceCode&) override; ...
5 years, 11 months ago (2015-01-22 02:11:54 UTC) #5
marja
I don't understand much about the Oilpan special types but... https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/ScriptStreamer.cpp File Source/bindings/core/v8/ScriptStreamer.cpp (right): https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/ScriptStreamer.cpp#newcode415 ...
5 years, 11 months ago (2015-01-22 08:21:57 UTC) #7
haraken
https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/ScriptStreamer.cpp File Source/bindings/core/v8/ScriptStreamer.cpp (right): https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/ScriptStreamer.cpp#newcode415 Source/bindings/core/v8/ScriptStreamer.cpp:415: RefPtrWillBeRawPtr<ScriptStreamer> protect(this); On 2015/01/22 08:21:57, marja wrote: > ...
5 years, 11 months ago (2015-01-22 08:24:50 UTC) #8
sof
On 2015/01/22 02:11:54, haraken wrote: > LGTM with a comment. > > https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/PageScriptDebugServer.h > File ...
5 years, 11 months ago (2015-01-22 08:37:41 UTC) #9
haraken
> > Shall we change m_preprocessorSourceCode to ScriptSourceCode* and add > > GC_PLUGIN_IGNORE? Or a ...
5 years, 11 months ago (2015-01-22 08:45:11 UTC) #10
sof
https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/PageScriptDebugServer.cpp File Source/bindings/core/v8/PageScriptDebugServer.cpp (right): https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/PageScriptDebugServer.cpp#newcode116 Source/bindings/core/v8/PageScriptDebugServer.cpp:116: visitor->trace(m_preprocessorSourceCode); On 2015/01/22 08:45:11, haraken wrote: > > Just ...
5 years, 11 months ago (2015-01-22 09:16:46 UTC) #11
haraken
On 2015/01/22 09:16:46, sof wrote: > https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/PageScriptDebugServer.cpp > File Source/bindings/core/v8/PageScriptDebugServer.cpp (right): > > https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/PageScriptDebugServer.cpp#newcode116 > ...
5 years, 11 months ago (2015-01-22 09:36:25 UTC) #12
sof
On 2015/01/22 09:36:25, haraken wrote: > On 2015/01/22 09:16:46, sof wrote: > > > https://codereview.chromium.org/847803002/diff/100001/Source/bindings/core/v8/PageScriptDebugServer.cpp ...
5 years, 11 months ago (2015-01-22 09:38:23 UTC) #13
haraken
On 2015/01/22 09:38:23, sof wrote: > On 2015/01/22 09:36:25, haraken wrote: > > On 2015/01/22 ...
5 years, 11 months ago (2015-01-22 09:41:27 UTC) #14
sof
On 2015/01/22 09:41:27, haraken wrote: > On 2015/01/22 09:38:23, sof wrote: > > On 2015/01/22 ...
5 years, 11 months ago (2015-01-22 10:10:53 UTC) #15
sof
On 2015/01/22 10:10:53, sof wrote: > On 2015/01/22 09:41:27, haraken wrote: > > On 2015/01/22 ...
5 years, 11 months ago (2015-01-22 12:02:48 UTC) #16
haraken
LGTM https://codereview.chromium.org/847803002/diff/140001/Source/bindings/core/v8/ScriptSourceCode.h File Source/bindings/core/v8/ScriptSourceCode.h (right): https://codereview.chromium.org/847803002/diff/140001/Source/bindings/core/v8/ScriptSourceCode.h#newcode61 Source/bindings/core/v8/ScriptSourceCode.h:61: bool isNull() const { return m_source.isNull(); } Shall ...
5 years, 11 months ago (2015-01-22 13:38:36 UTC) #17
sof
Thanks for the review. https://codereview.chromium.org/847803002/diff/140001/Source/bindings/core/v8/ScriptSourceCode.h File Source/bindings/core/v8/ScriptSourceCode.h (right): https://codereview.chromium.org/847803002/diff/140001/Source/bindings/core/v8/ScriptSourceCode.h#newcode61 Source/bindings/core/v8/ScriptSourceCode.h:61: bool isNull() const { return ...
5 years, 11 months ago (2015-01-22 14:04:12 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/847803002/160001
5 years, 11 months ago (2015-01-22 14:05:20 UTC) #20
commit-bot: I haz the power
5 years, 11 months ago (2015-01-22 15:30:07 UTC) #21
Message was sent while issue was closed.
Committed patchset #9 (id:160001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=188816

Powered by Google App Engine
This is Rietveld 408576698