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

Issue 1022703007: Simplify ChildProcessLauncher (Closed)

Created:
5 years, 9 months ago by no sievers
Modified:
5 years, 2 months ago
CC:
chromium-reviews, darin-cc_chromium.org, nasko+codewatch_chromium.org, creis+watch_chromium.org, piman+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@launcher
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Simplify ChildProcessLauncher Remove the refcounted internal state object (nested class 'Context'). This refactor makes it more obvious what happens on what thread, and avoids the need to pass refptrs around. TBR=bradnelson@chromium.org BUG=469248 Committed: https://crrev.com/954e37aad499a68771f3c517d1e4760e38986e0e Cr-Commit-Position: refs/heads/master@{#322695}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : move static functions to anonymous namespace #

Patch Set 6 : fix Android compile #

Total comments: 7

Patch Set 7 : default arg, rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+317 lines, -418 lines) Patch
M components/nacl/browser/nacl_broker_host_win.cc View 1 2 3 4 1 chunk +2 lines, -1 line 0 comments Download
M components/nacl/browser/nacl_process_host.cc View 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/browser_child_process_host_impl.h View 2 chunks +2 lines, -5 lines 0 comments Download
M content/browser/browser_child_process_host_impl.cc View 3 chunks +4 lines, -8 lines 0 comments Download
M content/browser/child_process_launcher.h View 1 2 3 4 5 6 4 chunks +44 lines, -9 lines 0 comments Download
M content/browser/child_process_launcher.cc View 1 2 3 4 5 8 chunks +250 lines, -385 lines 0 comments Download
M content/browser/gpu/gpu_process_host.cc View 1 2 3 4 5 6 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/plugin_process_host.cc View 1 chunk +5 lines, -5 lines 0 comments Download
M content/browser/ppapi_plugin_process_host.cc View 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/utility_process_host_impl.cc View 1 chunk +2 lines, -1 line 0 comments Download
M content/public/browser/browser_child_process_host.h View 1 chunk +2 lines, -1 line 0 comments Download

Messages

Total messages: 20 (6 generated)
no sievers
Ok, I feel this is going somewhere now. PTAL.
5 years, 9 months ago (2015-03-26 18:36:33 UTC) #2
no sievers
ptal. Moved all private static functions to the source file (with the exception of DidLaunch, ...
5 years, 9 months ago (2015-03-26 21:27:50 UTC) #3
jam
nice simplification using bind & weak ptr :) (didn't review in detail)
5 years, 9 months ago (2015-03-26 22:24:46 UTC) #4
rvargas (doing something else)
Nice indeed! https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.cc File content/browser/child_process_launcher.cc (right): https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.cc#newcode416 content/browser/child_process_launcher.cc:416: if (process.IsValid() && terminate_on_shutdown) { We should ...
5 years, 9 months ago (2015-03-27 22:01:22 UTC) #5
no sievers
https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.cc File content/browser/child_process_launcher.cc (right): https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.cc#newcode416 content/browser/child_process_launcher.cc:416: if (process.IsValid() && terminate_on_shutdown) { On 2015/03/27 22:01:22, rvargas ...
5 years, 9 months ago (2015-03-27 22:23:04 UTC) #6
rvargas (doing something else)
lgtm https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.cc File content/browser/child_process_launcher.cc (right): https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.cc#newcode416 content/browser/child_process_launcher.cc:416: if (process.IsValid() && terminate_on_shutdown) { On 2015/03/27 22:23:04, ...
5 years, 9 months ago (2015-03-27 22:56:00 UTC) #7
no sievers
https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.h File content/browser/child_process_launcher.h (right): https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.h#newcode118 content/browser/child_process_launcher.h:118: // shutdown. Default behavior is to terminate the child. ...
5 years, 9 months ago (2015-03-27 23:13:37 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1022703007/120001
5 years, 9 months ago (2015-03-27 23:14:37 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1022703007/120001
5 years, 9 months ago (2015-03-28 01:08:15 UTC) #14
commit-bot: I haz the power
Committed patchset #7 (id:120001)
5 years, 9 months ago (2015-03-28 01:50:34 UTC) #15
commit-bot: I haz the power
Patchset 7 (id:??) landed as https://crrev.com/954e37aad499a68771f3c517d1e4760e38986e0e Cr-Commit-Position: refs/heads/master@{#322695}
5 years, 9 months ago (2015-03-28 01:51:22 UTC) #16
Will Harris
Hi sievers - https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.cc File content/browser/child_process_launcher.cc (right): https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.cc#newcode311 content/browser/child_process_launcher.cc:311: base::Passed(&process_))); This CL changes behavior of ...
5 years, 2 months ago (2015-09-29 01:31:56 UTC) #18
no sievers
https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.cc File content/browser/child_process_launcher.cc (right): https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_process_launcher.cc#newcode311 content/browser/child_process_launcher.cc:311: base::Passed(&process_))); On 2015/09/29 01:31:55, Will Harris wrote: > This ...
5 years, 2 months ago (2015-09-29 17:16:59 UTC) #19
Will Harris
5 years, 2 months ago (2015-09-29 17:19:30 UTC) #20
Message was sent while issue was closed.
On 2015/09/29 17:16:59, sievers wrote:
>
https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_...
> File content/browser/child_process_launcher.cc (right):
> 
>
https://codereview.chromium.org/1022703007/diff/100001/content/browser/child_...
> content/browser/child_process_launcher.cc:311: base::Passed(&process_)));
> On 2015/09/29 01:31:55, Will Harris wrote:
> > This CL changes behavior of destructor to call TerminateOnLauncherThread
where
> > previously it did not.
> > 
> > I think this could be the root-cause of crbug.com/493452 since the majority
of
> > the crashes appear to be from this PostTask.
> > 
> > WDYT?
> 
> There is no functional behavior here, or at least none intended.
> The code here was previously performed through the Context destructor where it
> calls Terminate(). Did you check if the crash previously happened with the old
> signature? We can probably discuss in the bug.

ah yes you're right I didn't see that destructor... oh well back to drawing
board. I cannot see how this change would cause the issues I am seeing in 493452
anyway. The code looks correct. sigh. Happy to discuss on the bug.

Powered by Google App Engine
This is Rietveld 408576698