mirror of
https://github.com/Divested-Mobile/DivestOS-Build.git
synced 2024-08-30 14:11:54 +00:00
58 lines
2.4 KiB
Diff
58 lines
2.4 KiB
Diff
![]() |
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||
|
From: Daniel Micay <danielmicay@gmail.com>
|
||
|
Date: Tue, 14 May 2019 14:34:32 -0400
|
||
|
Subject: [PATCH] disable JCA provider warm up for exec spawning
|
||
|
|
||
|
---
|
||
|
.../com/android/internal/os/ZygoteInit.java | 22 ++++++++++---------
|
||
|
1 file changed, 12 insertions(+), 10 deletions(-)
|
||
|
|
||
|
diff --git a/core/java/com/android/internal/os/ZygoteInit.java b/core/java/com/android/internal/os/ZygoteInit.java
|
||
|
index cb584be53832..7d19700afef4 100644
|
||
|
--- a/core/java/com/android/internal/os/ZygoteInit.java
|
||
|
+++ b/core/java/com/android/internal/os/ZygoteInit.java
|
||
|
@@ -163,7 +163,7 @@ public class ZygoteInit {
|
||
|
WebViewFactory.prepareWebViewInZygote();
|
||
|
}
|
||
|
endPreload(fullPreload);
|
||
|
- warmUpJcaProviders();
|
||
|
+ warmUpJcaProviders(fullPreload);
|
||
|
Log.d(TAG, "end preload");
|
||
|
|
||
|
sPreloadComplete = true;
|
||
|
@@ -227,7 +227,7 @@ public class ZygoteInit {
|
||
|
* By doing it here we avoid that each app does it when requesting a service from the provider
|
||
|
* for the first time.
|
||
|
*/
|
||
|
- private static void warmUpJcaProviders() {
|
||
|
+ private static void warmUpJcaProviders(boolean fullPreload) {
|
||
|
long startTime = SystemClock.uptimeMillis();
|
||
|
Trace.traceBegin(
|
||
|
Trace.TRACE_TAG_DALVIK, "Starting installation of AndroidKeyStoreProvider");
|
||
|
@@ -237,15 +237,17 @@ public class ZygoteInit {
|
||
|
+ (SystemClock.uptimeMillis() - startTime) + "ms.");
|
||
|
Trace.traceEnd(Trace.TRACE_TAG_DALVIK);
|
||
|
|
||
|
- startTime = SystemClock.uptimeMillis();
|
||
|
- Trace.traceBegin(
|
||
|
- Trace.TRACE_TAG_DALVIK, "Starting warm up of JCA providers");
|
||
|
- for (Provider p : Security.getProviders()) {
|
||
|
- p.warmUpServiceProvision();
|
||
|
+ if (fullPreload) {
|
||
|
+ startTime = SystemClock.uptimeMillis();
|
||
|
+ Trace.traceBegin(
|
||
|
+ Trace.TRACE_TAG_DALVIK, "Starting warm up of JCA providers");
|
||
|
+ for (Provider p : Security.getProviders()) {
|
||
|
+ p.warmUpServiceProvision();
|
||
|
+ }
|
||
|
+ Log.i(TAG, "Warmed up JCA providers in "
|
||
|
+ + (SystemClock.uptimeMillis() - startTime) + "ms.");
|
||
|
+ Trace.traceEnd(Trace.TRACE_TAG_DALVIK);
|
||
|
}
|
||
|
- Log.i(TAG, "Warmed up JCA providers in "
|
||
|
- + (SystemClock.uptimeMillis() - startTime) + "ms.");
|
||
|
- Trace.traceEnd(Trace.TRACE_TAG_DALVIK);
|
||
|
}
|
||
|
|
||
|
/**
|