
1114c3c1d4cd
ac1943345e
1abb805041
2e07ab8c24
0044836677
c561811fad
7a848373ef
89646bdeb1
2a70bbac4a
d414dcaa35
b4cd877e3a
98634286bb
114c2635390c
11add34a4bc6
11a2b51906de
10527787f3c8
ffde474ad7
aa87e487c4
c906fe9722
c69c3eecd4
b2303adccc
5bb05db6f7
536b497688
24802a832b
ce6dcc2368
3d3d5c4d38
2eda592b79
1029f28b53c0
1013a992c716
9750efbf6bc
ed563b6f26
aad3c7d750
da3180f9a8
68773a29b7
283b3fa09c
f133136b65
01a01ce5f6
17c309c098
8806ec3ef1
Signed-off-by: Tad <tad@spotco.us>
58 lines
2.5 KiB
Diff
58 lines
2.5 KiB
Diff
From 2a70bbac4a8342175971498084494845b4f24546 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 04a323254c72..ad3b95ec67fc 100644
|
|
--- a/core/java/com/android/internal/os/ZygoteInit.java
|
|
+++ b/core/java/com/android/internal/os/ZygoteInit.java
|
|
@@ -159,7 +159,7 @@ static void preload(TimingsTraceLog bootTimingsTraceLog, boolean fullPreload) {
|
|
WebViewFactory.prepareWebViewInZygote();
|
|
}
|
|
endPreload(fullPreload);
|
|
- warmUpJcaProviders();
|
|
+ warmUpJcaProviders(fullPreload);
|
|
Log.d(TAG, "end preload");
|
|
|
|
sPreloadComplete = true;
|
|
@@ -229,7 +229,7 @@ private static void preloadTextResources() {
|
|
* 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");
|
|
@@ -241,15 +241,17 @@ private static void warmUpJcaProviders() {
|
|
+ (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);
|
|
}
|
|
|
|
/**
|