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

Issue 2828793002: Refactoring ChildProcessConnection. (Closed)

Created:
3 years, 8 months ago by Jay Civelli
Modified:
3 years, 8 months ago
CC:
chromium-reviews, mlamouri+watch-content_chromium.org, Peter Beverloo, jam, darin-cc_chromium.org, agrieve+watch_chromium.org, android-webview-reviews_chromium.org, jochen+watch_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Refactoring ChildProcessConnection. Splitting the ChildProcessConnectionImpl class in 2 and changing it to an abstract class instead of an interface. ChildProcessConnections can now be either: - ImportantChildProcessConnection: bound BIND_IMPORTANT and used for the GPU process. This is equivalent to the previous alwaysInForeground ChildProcessConnectionImpl. - ManagedChildProcessConnection: managed by the BindingManager. With that split, only ManagedChildProcessConnection are now passed to the BindingManager. Also changing the ChildProcessLauncherHelper to keep a reference to the ChildProcessConnection so that it can determine if it is OOM protected without the help of the BindingManager. As a result, the BindingManager does not keep ChildProcessConnections around when they are cleared. Also changed BindingManagerImplTest to exercise the actual connection code (instead of mocking some of the logic in the test). BUG=689758 Review-Url: https://codereview.chromium.org/2828793002 Cr-Commit-Position: refs/heads/master@{#467166} Committed: https://chromium.googlesource.com/chromium/src/+/faaae321d190728d93ff5b51c961c3d28c016ae5

Patch Set 1 : Refactoring ChildProcessConnection. #

Total comments: 22

Patch Set 2 : Addressed boliu@'s comments #

Patch Set 3 : Synced + fixed tests. #

Patch Set 4 : Fixed the test, really. #

Total comments: 1

Patch Set 5 : More test fixing. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+804 lines, -1334 lines) Patch
M android_webview/javatests/src/org/chromium/android_webview/test/AwContentsTest.java View 3 chunks +3 lines, -8 lines 0 comments Download
M build/android/lint/suppressions.xml View 1 2 1 chunk +0 lines, -1 line 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/BindingManagerIntegrationTest.java View 3 chunks +3 lines, -8 lines 0 comments Download
M content/public/android/BUILD.gn View 1 2 2 chunks +3 lines, -2 lines 0 comments Download
A + content/public/android/java/src/org/chromium/content/browser/BaseChildProcessConnection.java View 1 2 3 12 chunks +230 lines, -275 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/browser/BindingManager.java View 2 chunks +2 lines, -9 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/browser/BindingManagerImpl.java View 1 14 chunks +30 lines, -52 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/browser/ChildConnectionAllocator.java View 7 chunks +21 lines, -16 lines 0 comments Download
D content/public/android/java/src/org/chromium/content/browser/ChildProcessConnection.java View 1 chunk +0 lines, -154 lines 0 comments Download
D content/public/android/java/src/org/chromium/content/browser/ChildProcessConnectionImpl.java View 1 chunk +0 lines, -588 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java View 15 chunks +42 lines, -38 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncherHelper.java View 1 2 2 chunks +30 lines, -7 lines 0 comments Download
A content/public/android/java/src/org/chromium/content/browser/ImportantChildProcessConnection.java View 1 2 3 1 chunk +50 lines, -0 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/browser/LauncherThread.java View 3 chunks +16 lines, -2 lines 0 comments Download
A content/public/android/java/src/org/chromium/content/browser/ManagedChildProcessConnection.java View 1 2 3 4 1 chunk +225 lines, -0 lines 0 comments Download
M content/public/android/javatests/src/org/chromium/content/browser/ChildProcessLauncherTest.java View 16 chunks +28 lines, -29 lines 0 comments Download
M content/public/android/junit/src/org/chromium/content/browser/BindingManagerImplTest.java View 1 2 24 chunks +116 lines, -140 lines 0 comments Download
M content/shell/android/shell_apk/src/org/chromium/content_shell_apk/ChildProcessLauncherTestHelperService.java View 3 chunks +5 lines, -5 lines 0 comments Download

Messages

Total messages: 46 (35 generated)
Jay Civelli
I still need to fix a couple of tests but should be ready for review.
3 years, 8 months ago (2017-04-20 15:10:34 UTC) #17
boliu
https://codereview.chromium.org/2828793002/diff/40001/content/public/android/BUILD.gn File content/public/android/BUILD.gn (right): https://codereview.chromium.org/2828793002/diff/40001/content/public/android/BUILD.gn#newcode78 content/public/android/BUILD.gn:78: "java/src/org/chromium/content/browser/BaseChildProcessConnection.java", order https://codereview.chromium.org/2828793002/diff/40001/content/public/android/java/src/org/chromium/content/browser/BaseChildProcessConnection.java File content/public/android/java/src/org/chromium/content/browser/BaseChildProcessConnection.java (right): https://codereview.chromium.org/2828793002/diff/40001/content/public/android/java/src/org/chromium/content/browser/BaseChildProcessConnection.java#newcode165 content/public/android/java/src/org/chromium/content/browser/BaseChildProcessConnection.java:165: private ...
3 years, 8 months ago (2017-04-20 22:33:34 UTC) #18
Jay Civelli
https://codereview.chromium.org/2828793002/diff/40001/content/public/android/BUILD.gn File content/public/android/BUILD.gn (right): https://codereview.chromium.org/2828793002/diff/40001/content/public/android/BUILD.gn#newcode78 content/public/android/BUILD.gn:78: "java/src/org/chromium/content/browser/BaseChildProcessConnection.java", On 2017/04/20 22:33:34, boliu wrote: > order Done. ...
3 years, 8 months ago (2017-04-25 06:02:47 UTC) #25
boliu
lgtm https://codereview.chromium.org/2828793002/diff/90001/content/public/android/java/src/org/chromium/content/browser/ManagedChildProcessConnection.java File content/public/android/java/src/org/chromium/content/browser/ManagedChildProcessConnection.java (right): https://codereview.chromium.org/2828793002/diff/90001/content/public/android/java/src/org/chromium/content/browser/ManagedChildProcessConnection.java#newcode78 content/public/android/java/src/org/chromium/content/browser/ManagedChildProcessConnection.java:78: synchronized (mBindingLock) { nit: no need to synchronize ...
3 years, 8 months ago (2017-04-25 15:53:49 UTC) #28
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/2828793002/110001
3 years, 8 months ago (2017-04-25 20:54:15 UTC) #35
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/420107)
3 years, 8 months ago (2017-04-25 21:05:19 UTC) #37
Jay Civelli
Adding OWNER reviewers: dtrainor@ for chrome/android/javatests/src/org/chromium/chrome/browser/BindingManagerIntegrationTest.java jbudorick@ for build/android/lint/suppressions.xml
3 years, 8 months ago (2017-04-25 21:20:53 UTC) #39
jbudorick
On 2017/04/25 21:20:53, Jay Civelli wrote: > Adding OWNER reviewers: > dtrainor@ for > chrome/android/javatests/src/org/chromium/chrome/browser/BindingManagerIntegrationTest.java ...
3 years, 8 months ago (2017-04-25 21:24:41 UTC) #40
David Trainor- moved to gerrit
BindingManagerIntegrationTest.java lgtm
3 years, 8 months ago (2017-04-25 23:44:39 UTC) #41
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/2828793002/110001
3 years, 8 months ago (2017-04-25 23:47:17 UTC) #43
commit-bot: I haz the power
3 years, 8 months ago (2017-04-25 23:56:12 UTC) #46
Message was sent while issue was closed.
Committed patchset #5 (id:110001) as
https://chromium.googlesource.com/chromium/src/+/faaae321d190728d93ff5b51c961...

Powered by Google App Engine
This is Rietveld 408576698