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

Issue 1625015: Refactor ChildProcess and related classes to create a framework outside of br... (Closed)

Created:
10 years, 8 months ago by Marshall Greenblatt
Modified:
8 years, 2 months ago
Reviewers:
jam
CC:
chromium-reviews, jam+cc_chromium.org, ben+cc_chromium.org, apatrick_chromium, darin-cc_chromium.org, brettw-cc_chromium.org
Visibility:
Public.

Description

Refactor ChildProcess and related classes to create a framework outside of browser/ that supports the following: - Notification of child process creation/destruction. - Notification of child process crashes. - The ability to create and communicate with new child processes. - Logging of child process communication.

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1528 lines, -1086 lines) Patch
M base/base.gypi View 1 chunk +13 lines, -0 lines 0 comments Download
A + base/mp/message_router.h View 2 chunks +8 lines, -4 lines 0 comments Download
A + base/mp/message_router.cc View 2 chunks +6 lines, -2 lines 0 comments Download
A base/mp/mp_child_process.h View 1 chunk +73 lines, -0 lines 0 comments Download
A base/mp/mp_child_process.cc View 1 chunk +60 lines, -0 lines 0 comments Download
A base/mp/mp_child_process_context.h View 1 chunk +73 lines, -0 lines 0 comments Download
A base/mp/mp_child_process_host.h View 1 chunk +130 lines, -0 lines 0 comments Download
A base/mp/mp_child_process_host.cc View 1 chunk +190 lines, -0 lines 0 comments Download
A base/mp/mp_child_process_launcher.h View 1 chunk +72 lines, -0 lines 0 comments Download
A base/mp/mp_child_process_launcher.cc View 1 chunk +233 lines, -0 lines 0 comments Download
A base/mp/mp_child_thread.h View 1 chunk +102 lines, -0 lines 0 comments Download
A base/mp/mp_child_thread.cc View 1 chunk +153 lines, -0 lines 0 comments Download
A base/mp/mp_messages.h View 1 chunk +19 lines, -0 lines 0 comments Download
A base/mp/mp_messages_internal.h View 1 chunk +35 lines, -0 lines 0 comments Download
M chrome/browser/browser_process_impl.cc View 2 chunks +2 lines, -2 lines 0 comments Download
A chrome/browser/child_process_context.h View 1 chunk +44 lines, -0 lines 0 comments Download
A chrome/browser/child_process_context.cc View 1 chunk +225 lines, -0 lines 0 comments Download
M chrome/browser/child_process_host.h View 4 chunks +13 lines, -68 lines 0 comments Download
M chrome/browser/child_process_host.cc View 5 chunks +32 lines, -148 lines 0 comments Download
D chrome/browser/child_process_launcher.h View 1 chunk +0 lines, -64 lines 0 comments Download
D chrome/browser/child_process_launcher.cc View 1 chunk +0 lines, -355 lines 0 comments Download
M chrome/browser/gpu_process_host_ui_shim.h View 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/browser/renderer_host/browser_render_process_host.h View 5 chunks +7 lines, -4 lines 0 comments Download
M chrome/browser/renderer_host/browser_render_process_host.cc View 2 chunks +2 lines, -1 line 0 comments Download
M chrome/chrome_browser.gypi View 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/chrome_common.gypi View 1 chunk +0 lines, -2 lines 0 comments Download
M chrome/common/child_process.h View 2 chunks +4 lines, -44 lines 0 comments Download
M chrome/common/child_process.cc View 1 chunk +1 line, -51 lines 0 comments Download
M chrome/common/child_thread.h View 3 chunks +4 lines, -70 lines 0 comments Download
M chrome/common/child_thread.cc View 2 chunks +7 lines, -129 lines 0 comments Download
D chrome/common/message_router.h View 1 chunk +0 lines, -62 lines 0 comments Download
D chrome/common/message_router.cc View 1 chunk +0 lines, -46 lines 0 comments Download
M chrome/common/plugin_messages_internal.h View 2 chunks +0 lines, -18 lines 0 comments Download
M chrome/common/socket_stream_dispatcher.cc View 4 chunks +4 lines, -4 lines 0 comments Download
M chrome/gpu/gpu_channel.h View 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/plugin/plugin_channel_base.h View 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/renderer/gpu_channel_host.h View 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/renderer/renderer_glue.cc View 2 chunks +4 lines, -2 lines 0 comments Download
M ipc/ipc_message_utils.h View 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
Marshall Greenblatt
Initial draft of changes, please review.
10 years, 8 months ago (2010-04-15 22:22:58 UTC) #1
jam
I've glanced through the change. I just don't see enough shared code in the new ...
10 years, 8 months ago (2010-04-15 23:42:08 UTC) #2
Marshall Greenblatt
On 2010/04/15 23:42:08, John Abd-El-Malek wrote: > I've glanced through the change. I just don't ...
10 years, 8 months ago (2010-04-16 02:20:52 UTC) #3
jam
10 years, 8 months ago (2010-04-16 02:41:28 UTC) #4
Thanks for doing this anyways, and I hope all work is not lost since you can
just use these new classes in your code :)

On Thu, Apr 15, 2010 at 7:20 PM, <magreenblatt@gmail.com> wrote:

> On 2010/04/15 23:42:08, John Abd-El-Malek wrote:
>
>> I've glanced through the change.  I just don't see enough shared code in
>> the
>>
> new
>
>> files to justify adding the extra layers in Chrome (i.e. to have
>> PluginProcessHost derive from ChildProcessHost which derives from
>> base::MpChildProcessHost).  Some of the stuff that's shared is
>> questionable
>> whether it'll be useful for others, since it seems Chrome specific (i.e.
>> preventing race conditions when the process is shutting down.  this seems
>> dependent on the app, since for example we don't need it for
>> renderer/gpu/nacl
>> processes).  In the end, all that's left is thin layers around the IPC
>> code
>>
> and
>
>> just calling back the embedder.  The multi-process code in Chrome is hard
>> for
>> new team members to read as is, and I fear this will make it even harder.
>>  So
>>
> in
>
>> this case I would prefer that we don't do this change.
>>
>
> OK, thanks for taking the time to look it over :-)
>
>
>
>
> http://codereview.chromium.org/1625015/show
>

Powered by Google App Engine
This is Rietveld 408576698