Remove the linker parameter from ChildProcessConnection.

Removing a library loader linker specific parameter from the Android
ChildProcessConnection class to make it more generic (it was always
set to the same value).
This is part of the effort to move Android child process creation to
base/.

BUG=702316

Review-Url: https://codereview.chromium.org/2762773002
Cr-Commit-Position: refs/heads/master@{#458267}
diff --git a/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnection.java b/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnection.java
index 5e786a6..c3e6c3d 100644
--- a/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnection.java
+++ b/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnection.java
@@ -4,8 +4,6 @@
 
 package org.chromium.content.browser;
 
-import android.os.Bundle;
-
 import org.chromium.base.process_launcher.ChildProcessCreationParams;
 import org.chromium.content.common.FileDescriptorInfo;
 import org.chromium.content.common.IChildProcessCallback;
@@ -88,12 +86,8 @@
      * @param connectionCallback will be called exactly once after the connection is set up or the
      *                           setup fails
      */
-    void setupConnection(
-            String[] commandLine,
-            FileDescriptorInfo[] filesToBeMapped,
-            IChildProcessCallback processCallback,
-            ConnectionCallback connectionCallback,
-            Bundle sharedRelros);
+    void setupConnection(String[] commandLine, FileDescriptorInfo[] filesToBeMapped,
+            IChildProcessCallback processCallback, ConnectionCallback connectionCallback);
 
     /**
      * Terminates the connection to IChildProcessService, closing all bindings. It is safe to call
diff --git a/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnectionImpl.java b/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnectionImpl.java
index 2471005..4fdcd1c 100644
--- a/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnectionImpl.java
+++ b/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnectionImpl.java
@@ -91,14 +91,12 @@
         final String[] mCommandLine;
         final FileDescriptorInfo[] mFilesToBeMapped;
         final IChildProcessCallback mCallback;
-        final Bundle mSharedRelros;
 
         ConnectionParams(String[] commandLine, FileDescriptorInfo[] filesToBeMapped,
-                IChildProcessCallback callback, Bundle sharedRelros) {
+                IChildProcessCallback callback) {
             mCommandLine = commandLine;
             mFilesToBeMapped = filesToBeMapped;
             mCallback = callback;
-            mSharedRelros = sharedRelros;
         }
     }
 
@@ -350,12 +348,8 @@
     }
 
     @Override
-    public void setupConnection(
-            String[] commandLine,
-            FileDescriptorInfo[] filesToBeMapped,
-            IChildProcessCallback processCallback,
-            ConnectionCallback connectionCallback,
-            Bundle sharedRelros) {
+    public void setupConnection(String[] commandLine, FileDescriptorInfo[] filesToBeMapped,
+            IChildProcessCallback processCallback, ConnectionCallback connectionCallback) {
         synchronized (mLock) {
             assert mConnectionParams == null;
             if (mServiceDisconnected) {
@@ -366,8 +360,8 @@
             try {
                 TraceEvent.begin("ChildProcessConnectionImpl.setupConnection");
                 mConnectionCallback = connectionCallback;
-                mConnectionParams = new ConnectionParams(
-                        commandLine, filesToBeMapped, processCallback, sharedRelros);
+                mConnectionParams =
+                        new ConnectionParams(commandLine, filesToBeMapped, processCallback);
                 // Run the setup if the service is already connected. If not,
                 // doConnectionSetupLocked() will be called from onServiceConnected().
                 if (mServiceConnectComplete) {
@@ -405,9 +399,8 @@
             assert mServiceConnectComplete && mService != null;
             assert mConnectionParams != null;
 
-            Bundle bundle =
-                    ChildProcessLauncher.createsServiceBundle(mConnectionParams.mCommandLine,
-                            mConnectionParams.mFilesToBeMapped, mConnectionParams.mSharedRelros);
+            Bundle bundle = ChildProcessLauncher.createsServiceBundle(
+                    mConnectionParams.mCommandLine, mConnectionParams.mFilesToBeMapped);
             try {
                 mPid = mService.setupConnection(bundle, mConnectionParams.mCallback);
                 assert mPid != 0 : "Child service claims to be run by a process of pid=0.";
diff --git a/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java b/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
index ba4cab8..57fa13b6 100644
--- a/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
+++ b/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
@@ -765,13 +765,13 @@
      * @param linkerParams Linker params to start the service.
      */
     protected static Bundle createsServiceBundle(
-            String[] commandLine, FileDescriptorInfo[] filesToBeMapped, Bundle sharedRelros) {
+            String[] commandLine, FileDescriptorInfo[] filesToBeMapped) {
         Bundle bundle = new Bundle();
         bundle.putStringArray(ChildProcessConstants.EXTRA_COMMAND_LINE, commandLine);
         bundle.putParcelableArray(ChildProcessConstants.EXTRA_FILES, filesToBeMapped);
         bundle.putInt(ChildProcessConstants.EXTRA_CPU_COUNT, CpuFeatures.getCount());
         bundle.putLong(ChildProcessConstants.EXTRA_CPU_FEATURES, CpuFeatures.getMask());
-        bundle.putBundle(Linker.EXTRA_LINKER_SHARED_RELROS, sharedRelros);
+        bundle.putBundle(Linker.EXTRA_LINKER_SHARED_RELROS, Linker.getInstance().getSharedRelros());
         return bundle;
     }
 
@@ -803,11 +803,8 @@
                 };
 
         assert callbackType != CALLBACK_FOR_UNKNOWN_PROCESS;
-        connection.setupConnection(commandLine,
-                                   filesToBeMapped,
-                                   createCallback(childProcessId, callbackType),
-                                   connectionCallback,
-                                   Linker.getInstance().getSharedRelros());
+        connection.setupConnection(commandLine, filesToBeMapped,
+                createCallback(childProcessId, callbackType), connectionCallback);
     }
 
     /**
diff --git a/content/public/android/junit/src/org/chromium/content/browser/BindingManagerImplTest.java b/content/public/android/junit/src/org/chromium/content/browser/BindingManagerImplTest.java
index ab00d2a..fa17f2a 100644
--- a/content/public/android/junit/src/org/chromium/content/browser/BindingManagerImplTest.java
+++ b/content/public/android/junit/src/org/chromium/content/browser/BindingManagerImplTest.java
@@ -10,7 +10,6 @@
 
 import android.app.Activity;
 import android.app.Application;
-import android.os.Bundle;
 import android.util.Pair;
 
 import org.junit.Assert;
@@ -127,8 +126,7 @@
 
         @Override
         public void setupConnection(String[] commandLine, FileDescriptorInfo[] filesToBeMapped,
-                IChildProcessCallback processCallback, ConnectionCallback connectionCallbacks,
-                Bundle sharedRelros) {
+                IChildProcessCallback processCallback, ConnectionCallback connectionCallbacks) {
             throw new UnsupportedOperationException();
         }