Preload public native libraries when starting a zygote
This lets other users of libnativeloader (like dex2oat)
avoid unnecessary cold loads of libandroid.so which could
take up to a second.
Bug: http://b/
27245894
(cherry picked from commit
b0824979be2653ba300382b52c1b1236fd44f0de)
Change-Id: I04a640c104dba5b585a59d63270e81b6c9ad6f7e
libutils \
liblog \
libbinder \
+ libnativeloader \
libandroid_runtime \
$(app_process_common_shared_libs) \
#include <cutils/process_name.h>
#include <cutils/properties.h>
#include <cutils/trace.h>
+#include <nativeloader/native_loader.h>
#include <android_runtime/AndroidRuntime.h>
#include <private/android_filesystem_config.h> // for AID_SYSTEM
}
if (zygote) {
+ PreloadPublicNativeLibraries();
runtime.start("com.android.internal.os.ZygoteInit", args, zygote);
} else if (className) {
runtime.start("com.android.internal.os.RuntimeInit", args, zygote);