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

Issue 2680123003: Multi-Process Tracking Support (Closed)

Created:
3 years, 10 months ago by bcwhite
Modified:
3 years, 9 months ago
CC:
chromium-reviews, vmpstr+watch_chromium.org, Will Harris
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Multi-Process Tracking Support Fully support having multiple processes write information to the same breadcrumbs file. This involves some process-specific operations plus the ability for a controlling process to clean-up after its dead children. BUG=620813 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.win:win10_chromium_x64_rel_ng Review-Url: https://codereview.chromium.org/2680123003 Cr-Commit-Position: refs/heads/master@{#457502} Committed: https://chromium.googlesource.com/chromium/src/+/815054b5918e1d631c4208b06b83d1e833ef6240

Patch Set 1 #

Patch Set 2 : added process_data, similar to global_data, and background task-runner support #

Patch Set 3 : rebased (and associated fixes) #

Patch Set 4 : wire actual process launch/exit to global tracker #

Total comments: 2

Patch Set 5 : rebased #

Total comments: 7

Patch Set 6 : refactor process-info tracking; add process-info to module tracking #

Total comments: 14

Patch Set 7 : added defined process-phase recording and process-exit callback support #

Total comments: 10

Patch Set 8 : record process exit inside content_main #

Patch Set 9 : addressed review comments by manzagop #

Patch Set 10 : record command-line when a process is started #

Total comments: 15

Patch Set 11 : rebased #

Patch Set 12 : addressed review comments by manzagop #

Total comments: 1

Patch Set 13 : addressed review comments by manzagop #

Total comments: 12

Patch Set 14 : comment improvements #

Patch Set 15 : rebased #

Patch Set 16 : move tracking from target_process to sandbox_win #

Unified diffs Side-by-side diffs Delta from patch set Stats (+800 lines, -181 lines) Patch
M base/debug/activity_tracker.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 19 chunks +194 lines, -26 lines 0 comments Download
M base/debug/activity_tracker.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 30 chunks +405 lines, -143 lines 0 comments Download
M base/debug/activity_tracker_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +151 lines, -11 lines 0 comments Download
M base/process/launch_win.cc View 1 2 3 4 5 6 7 8 9 5 chunks +12 lines, -0 lines 0 comments Download
M base/process/process_win.cc View 1 2 3 2 chunks +7 lines, -0 lines 0 comments Download
M content/app/content_main.cc View 1 2 3 4 5 6 7 2 chunks +23 lines, -1 line 0 comments Download
M content/common/sandbox_win.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 chunks +8 lines, -0 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 126 (81 generated)
bcwhite
I haven't yet tied this into Chrome to have the process tracking be called but ...
3 years, 10 months ago (2017-02-08 18:54:49 UTC) #3
bcwhite
Tracking is now functional. With this, it could be enabled in other processes using the ...
3 years, 10 months ago (2017-02-16 18:53:56 UTC) #19
bcwhite
3 years, 10 months ago (2017-02-16 18:54:22 UTC) #21
manzagop (departed)
Cool stuff! To make sure I followed, let me summarize what I think this is ...
3 years, 10 months ago (2017-02-17 19:39:55 UTC) #26
manzagop (departed)
Side thought: what happens when a process crashes. Will the cleanup be invoked? Will it ...
3 years, 10 months ago (2017-02-17 20:21:37 UTC) #27
bcwhite
> To make sure I followed, let me summarize what I think this is doing. ...
3 years, 10 months ago (2017-02-17 20:24:47 UTC) #28
bcwhite
On 2017/02/17 20:21:37, manzagop wrote: > Side thought: what happens when a process crashes. Will ...
3 years, 10 months ago (2017-02-17 20:26:51 UTC) #29
bcwhite
https://codereview.chromium.org/2680123003/diff/60001/sandbox/win/src/target_process.cc File sandbox/win/src/target_process.cc (right): https://codereview.chromium.org/2680123003/diff/60001/sandbox/win/src/target_process.cc#newcode164 sandbox/win/src/target_process.cc:164: base::debug::GlobalActivityTracker::RecordProcessLaunchIfEnabled( On 2017/02/17 19:39:54, manzagop wrote: > Will these ...
3 years, 10 months ago (2017-02-17 20:31:53 UTC) #30
manzagop (departed)
> > - all processes are free to read everything, but they can only write ...
3 years, 10 months ago (2017-02-17 20:35:15 UTC) #31
manzagop (departed)
On 2017/02/17 20:26:51, bcwhite wrote: > On 2017/02/17 20:21:37, manzagop wrote: > > Side thought: ...
3 years, 10 months ago (2017-02-17 20:38:44 UTC) #32
manzagop (departed)
WRT the current CL, did you mean to add anything to it or should I ...
3 years, 10 months ago (2017-02-17 20:45:21 UTC) #33
bcwhite
> > Yes. Chrome version, for example, would be good global data. Things that > ...
3 years, 10 months ago (2017-02-17 21:48:08 UTC) #34
bcwhite
> > > Side thought: what happens when a process crashes. Will the cleanup be ...
3 years, 10 months ago (2017-02-17 21:49:36 UTC) #35
bcwhite
> WRT the current CL, did you mean to add anything to it or should ...
3 years, 10 months ago (2017-02-17 21:50:23 UTC) #36
manzagop (departed)
On 2017/02/17 21:48:08, bcwhite wrote: > > > Yes. Chrome version, for example, would be ...
3 years, 10 months ago (2017-02-17 22:01:36 UTC) #37
bcwhite
I'm thinking that "process lifetime" should be recorded by the GlobalTracker using an enum that ...
3 years, 10 months ago (2017-02-17 22:02:15 UTC) #38
bcwhite
On 2017/02/17 22:01:36, manzagop wrote: > On 2017/02/17 21:48:08, bcwhite wrote: > > > > ...
3 years, 10 months ago (2017-02-17 22:03:16 UTC) #39
manzagop (departed)
On 2017/02/17 21:49:36, bcwhite wrote: > > > > Side thought: what happens when a ...
3 years, 10 months ago (2017-02-17 22:04:07 UTC) #40
bcwhite
On 2017/02/17 22:04:07, manzagop wrote: > On 2017/02/17 21:49:36, bcwhite wrote: > > > > ...
3 years, 10 months ago (2017-02-21 17:00:39 UTC) #41
bcwhite
Okay, I think it's ready for proper review.
3 years, 10 months ago (2017-02-22 19:01:30 UTC) #50
manzagop (departed)
Nice! A few comments. I'm not sure of the mechanic for handling child process crashes. ...
3 years, 10 months ago (2017-02-22 20:44:16 UTC) #53
bcwhite
> I'm not sure of the mechanic for handling child process crashes. For cases > ...
3 years, 10 months ago (2017-02-22 22:13:08 UTC) #57
manzagop (departed)
A few nits. https://codereview.chromium.org/2680123003/diff/100001/base/debug/activity_tracker.cc File base/debug/activity_tracker.cc (right): https://codereview.chromium.org/2680123003/diff/100001/base/debug/activity_tracker.cc#newcode118 base/debug/activity_tracker.cc:118: create_stamp = stamp; On 2017/02/22 22:13:02, ...
3 years, 10 months ago (2017-02-24 15:56:36 UTC) #64
bcwhite
https://codereview.chromium.org/2680123003/diff/100001/base/debug/activity_tracker.cc File base/debug/activity_tracker.cc (right): https://codereview.chromium.org/2680123003/diff/100001/base/debug/activity_tracker.cc#newcode118 base/debug/activity_tracker.cc:118: create_stamp = stamp; On 2017/02/24 15:56:35, manzagop wrote: > ...
3 years, 9 months ago (2017-03-06 16:33:52 UTC) #71
manzagop (departed)
I'll do a final pass tomorrow. https://codereview.chromium.org/2680123003/diff/180001/base/debug/activity_tracker.cc File base/debug/activity_tracker.cc (right): https://codereview.chromium.org/2680123003/diff/180001/base/debug/activity_tracker.cc#newcode1288 base/debug/activity_tracker.cc:1288: << " with ...
3 years, 9 months ago (2017-03-06 21:48:41 UTC) #74
manzagop (departed)
Only nits! lgtm https://codereview.chromium.org/2680123003/diff/180001/base/process/launch_win.cc File base/process/launch_win.cc (right): https://codereview.chromium.org/2680123003/diff/180001/base/process/launch_win.cc#newcode100 base/process/launch_win.cc:100: base::debug::GlobalActivityTracker* tracker = On 2017/03/06 16:33:52, ...
3 years, 9 months ago (2017-03-07 22:08:58 UTC) #79
bcwhite
https://codereview.chromium.org/2680123003/diff/180001/base/process/launch_win.cc File base/process/launch_win.cc (right): https://codereview.chromium.org/2680123003/diff/180001/base/process/launch_win.cc#newcode100 base/process/launch_win.cc:100: base::debug::GlobalActivityTracker* tracker = On 2017/03/07 22:08:57, manzagop wrote: > ...
3 years, 9 months ago (2017-03-09 14:07:54 UTC) #88
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2680123003/280001
3 years, 9 months ago (2017-03-09 14:08:19 UTC) #91
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/381903)
3 years, 9 months ago (2017-03-09 14:14:18 UTC) #93
bcwhite
Calls to track process begin/exit need to be added to various places in the code ...
3 years, 9 months ago (2017-03-09 18:00:30 UTC) #95
Mark Mentovai
base/process OK, LGTM
3 years, 9 months ago (2017-03-09 18:04:06 UTC) #96
Avi (use Gerrit)
content lgtm
3 years, 9 months ago (2017-03-09 18:49:41 UTC) #97
penny
On 2017/03/09 18:49:41, Avi wrote: > content lgtm Hi Brian, Process-startup tracking support FTW! I'm ...
3 years, 9 months ago (2017-03-09 19:32:14 UTC) #99
penny
On 2017/03/09 19:32:14, penny wrote: > On 2017/03/09 18:49:41, Avi wrote: > > content lgtm ...
3 years, 9 months ago (2017-03-09 19:35:29 UTC) #100
Will Harris
yes I agree with pennymac, moving this out to content::StartSandboxedProcess would be best here.
3 years, 9 months ago (2017-03-09 19:36:55 UTC) #101
bcwhite
On 2017/03/09 19:36:55, Will Harris wrote: > yes I agree with pennymac, moving this out ...
3 years, 9 months ago (2017-03-10 17:39:18 UTC) #104
penny
On 2017/03/10 17:39:18, bcwhite wrote: > On 2017/03/09 19:36:55, Will Harris wrote: > > yes ...
3 years, 9 months ago (2017-03-12 01:49:46 UTC) #108
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2680123003/300001
3 years, 9 months ago (2017-03-13 16:14:43 UTC) #111
commit-bot: I haz the power
Try jobs failed on following builders: win10_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win10_chromium_x64_rel_ng/builds/765)
3 years, 9 months ago (2017-03-13 19:58:39 UTC) #113
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2680123003/300001
3 years, 9 months ago (2017-03-13 20:15:35 UTC) #115
commit-bot: I haz the power
Try jobs failed on following builders: win10_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win10_chromium_x64_rel_ng/builds/767)
3 years, 9 months ago (2017-03-13 23:57:08 UTC) #117
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2680123003/300001
3 years, 9 months ago (2017-03-14 12:51:01 UTC) #119
commit-bot: I haz the power
Try jobs failed on following builders: win10_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win10_chromium_x64_rel_ng/builds/768)
3 years, 9 months ago (2017-03-14 16:24:47 UTC) #121
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2680123003/300001
3 years, 9 months ago (2017-03-16 17:22:22 UTC) #123
commit-bot: I haz the power
3 years, 9 months ago (2017-03-16 18:42:05 UTC) #126
Message was sent while issue was closed.
Committed patchset #16 (id:300001) as
https://chromium.googlesource.com/chromium/src/+/815054b5918e1d631c4208b06b83...

Powered by Google App Engine
This is Rietveld 408576698