diff options
author | Kenny Root <kroot@google.com> | 2010-09-03 07:56:38 -0700 |
---|---|---|
committer | Kenny Root <kroot@google.com> | 2010-09-03 09:33:34 -0700 |
commit | 305bcbf0c961840c4505770d084a1caacc074dbb (patch) | |
tree | 6ccdf93bd6bbc7728370f7ceefad72f4ec39ecfc /services/java | |
parent | 12da9d7472ae87b841575d5358e19f143d12f900 (diff) | |
download | frameworks_base-305bcbf0c961840c4505770d084a1caacc074dbb.zip frameworks_base-305bcbf0c961840c4505770d084a1caacc074dbb.tar.gz frameworks_base-305bcbf0c961840c4505770d084a1caacc074dbb.tar.bz2 |
Decrease PackageManagerService wait time for vold
Up the blocking queue maximum to twice the number of containers we
allow which should let "asec list" complete without blocking the thread
several times.
Change the threads for the NativeDaemonConnector to vold and netd to be
more descriptive instead of the same name.
Bug: 2501075
Change-Id: I7e7949845a6c70a3d619aec0fa79ceef3c17a4be
Diffstat (limited to 'services/java')
3 files changed, 21 insertions, 10 deletions
diff --git a/services/java/com/android/server/MountService.java b/services/java/com/android/server/MountService.java index 344bfc1..6e8b42e 100644 --- a/services/java/com/android/server/MountService.java +++ b/services/java/com/android/server/MountService.java @@ -68,6 +68,8 @@ class MountService extends IMountService.Stub private static final String TAG = "MountService"; + private static final String VOLD_TAG = "VoldConnector"; + /* * Internal vold volume state constants */ @@ -993,9 +995,15 @@ class MountService extends IMountService.Stub return; } - mConnector = new NativeDaemonConnector(this, "vold", 10, "VoldConnector"); + /* + * Create the connection to vold with a maximum queue of twice the + * amount of containers we'd ever expect to have. This keeps an + * "asec list" from blocking a thread repeatedly. + */ + mConnector = new NativeDaemonConnector(this, "vold", + PackageManagerService.MAX_CONTAINERS * 2, VOLD_TAG); mReady = false; - Thread thread = new Thread(mConnector, NativeDaemonConnector.class.getName()); + Thread thread = new Thread(mConnector, VOLD_TAG); thread.start(); } diff --git a/services/java/com/android/server/NetworkManagementService.java b/services/java/com/android/server/NetworkManagementService.java index c156150..4a69f20 100644 --- a/services/java/com/android/server/NetworkManagementService.java +++ b/services/java/com/android/server/NetworkManagementService.java @@ -55,6 +55,8 @@ class NetworkManagementService extends INetworkManagementService.Stub { private static final String TAG = "NetworkManagmentService"; + private static final String NETD_TAG = "NetdConnector"; + class NetdResponseCode { public static final int InterfaceListResult = 110; public static final int TetherInterfaceListResult = 111; @@ -101,8 +103,8 @@ class NetworkManagementService extends INetworkManagementService.Stub { } mConnector = new NativeDaemonConnector( - new NetdCallbackReceiver(), "netd", 10, "NetdConnector"); - Thread thread = new Thread(mConnector, NativeDaemonConnector.class.getName()); + new NetdCallbackReceiver(), "netd", 10, NETD_TAG); + Thread thread = new Thread(mConnector, NETD_TAG); thread.start(); } diff --git a/services/java/com/android/server/PackageManagerService.java b/services/java/com/android/server/PackageManagerService.java index 1141fdc..f5862df 100644 --- a/services/java/com/android/server/PackageManagerService.java +++ b/services/java/com/android/server/PackageManagerService.java @@ -9383,17 +9383,18 @@ class PackageManagerService extends IPackageManager.Stub { // ------- apps on sdcard specific code ------- static final boolean DEBUG_SD_INSTALL = false; - final private String mSdEncryptKey = "AppsOnSD"; - final private String mSdEncryptAlg = "AES"; + private static final String SD_ENCRYPTION_KEYSTORE_NAME = "AppsOnSD"; + private static final String SD_ENCRYPTION_ALGORITHM = "AES"; + static final int MAX_CONTAINERS = 250; private boolean mMediaMounted = false; - private static final int MAX_CONTAINERS = 250; private String getEncryptKey() { try { - String sdEncKey = SystemKeyStore.getInstance().retrieveKeyHexString(mSdEncryptKey); + String sdEncKey = SystemKeyStore.getInstance().retrieveKeyHexString( + SD_ENCRYPTION_KEYSTORE_NAME); if (sdEncKey == null) { - sdEncKey = SystemKeyStore.getInstance(). - generateNewKeyHexString(128, mSdEncryptAlg, mSdEncryptKey); + sdEncKey = SystemKeyStore.getInstance().generateNewKeyHexString(128, + SD_ENCRYPTION_ALGORITHM, SD_ENCRYPTION_KEYSTORE_NAME); if (sdEncKey == null) { Slog.e(TAG, "Failed to create encryption keys"); return null; |