History log of /frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
1fe1dc0131f8251703ad54ac5e79eefa84affc2b 07-Jul-2017 Jesse Hall <jessehall@google.com> Preload app-process HALs in Zygote

Some HALs, like a.h.graphics.mapper, are always passthrough and are
used by nearly all app processes. Preload those in Zygote to save app
startup time and share more pages between processes. This has the side
effect of also preloading a bunch of HIDL-related system and vndk
libraries that would also otherwise be loaded independently by every
app.

An earlier attempt at this change tried to preload the HAL via a
static initializer in libui.so (which is already preloaded, and which
is the immediate client of the HAL). But several other non-Zygote
processes also use libui.so, and didn't have SELinux permission to
access the device nodes used by the HAL. This version uses an explicit
call from Zygote to preload the HAL, instead of doing it implicitly.

Bug: 62353585
Test: check that a.h.graphics.mapper is in /proc/`pid zygote64`/maps
Change-Id: I42405c3b6cdf1ae412039140d656d15a6d4f8882
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
26b56e628bd77b1e77137b68aecb194791ec6cf6 17-Dec-2014 Elliott Hughes <enh@google.com> Move the remaining ZygoteInit native code over to Java.

Bug: 18719692
Change-Id: I5f9834edecdbcc065a33a9921c740a53441636a4
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
894724be3026c84681cdc902cb62eab6ba646e11 15-Dec-2014 Elliott Hughes <enh@google.com> Rewrite selectReadable JNI in Java.

Bug: 18719692
Change-Id: Id4fa95a31f112c720f7a3ac47a3b6c95c3028438
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
dac83f5e6ad494f19a17523e56872e1d0870ee57 15-Dec-2014 Elliott Hughes <enh@google.com> Reimplement reopenStdio in Java.

Bug: 18719692
Change-Id: I4ed984cd6148c5cba75d46a60f32a0687a5bcac3
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
3fe595108f47fffd73cfc2eb48b71a31e5d606d0 12-Dec-2014 Elliott Hughes <enh@google.com> Lose some unnecessary JNI from the zygote.

Bug: 18719692
Change-Id: Ie2d50400f10f3c54cfbf94e54656f6d704eac267
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
ed6b9dff563c5e22f040ff37e12c0d771e0478ae 21-Nov-2014 Andreas Gampe <agampe@google.com> Frameworks/base: Consistency in core/jni

Make consistent use of core_jni_helpers for registration.

Translate some #ifdefs into const bools.

Change-Id: I37639aa053dd50f003a552cbd8550dddecc811c5
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
98671c34fa00a79c62ff0d9d874428bed1f86e92 20-Aug-2014 Mathieu Chartier <mathieuc@google.com> Clean up ExceptionOccurred.

Use ExceptionCheck before ExceptionOccurred since ExceptionCheck
doesn't acquire any locks and is faster.

Change-Id: Ibd87fd1e33b339bd2a6effa1d20d3253c8a61bdc
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
42a4bb5730266f80585e67262c73505d0bfffbf8 08-Nov-2013 Elliott Hughes <enh@google.com> Remove incorrect (and unused) capget code.

Note that if you revert this change, the code it removes is incorrect,
and doesn't handle the top 32 bits of capabilities, one of which we're
already using: CAP_BLOCK_SUSPEND.

Bug: 11508244
Change-Id: Ice1f51334bce4941c6d24d6016450a2ebcf92886
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
e606757966175e6f287e18ed2e458050f7da3731 01-Mar-2013 Nick Kralevich <nnk@google.com> am edb95c3f: am 937cfa77: Merge "ZygoteInit: use correct header files."

* commit 'edb95c3f3ca4e51ef0432af925b8f4330e6dae81':
ZygoteInit: use correct header files.
b3c4a0bb5c95417ae6761d5df775f90da6c80fed 01-Mar-2013 Nick Kralevich <nnk@google.com> ZygoteInit: use correct header files.

Don't define capget / capset when we already have definitions
of it in our header files.

Change-Id: Ia2d7e408879bd09019f99aef52acb63a7a243d48
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
40779e50f04b0d03b49836c640308061f88ff0be 30-Jan-2013 Nick Kralevich <nnk@google.com> Remove dead code.

Setting capabiltities is handled by dalvik. This code
is never called.

Change-Id: I903952c43cf60ea59ec954c9168a7604d05ccaf7
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
c1b9bbb21c8ad5109978a4e9e770cd18b0257434 13-Jul-2011 Mike Lockwood <lockwood@android.com> Remove some #ifdef HAVE_ANDROID_OS that were needed for the simulator build

Change-Id: I13d9f251f86c05ae5405f37adbf6b8e9660935ba
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
ebed7d6e35f7f960e6e6add2b8ab7c7a31a511c3 17-May-2011 Jeff Brown <jeffbrown@google.com> Support wrapping app processes to inject debug instrumentation.
Bug: 4437846

Change-Id: I4552501c693716b14714afb5c5248edaca9547ab
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
69a017bc1d1649350f830dfada5c6ed5eac0b770 08-Apr-2011 Elliott Hughes <enh@google.com> More JNI exception-throwing cleanup.

There are a few (unimportant) bug fixes here. There were several attempts to
throw exceptions in situations where there's already a pending exception.

There were also cases where the code was wrong; it was checking for a NULL
return from Get*ArrayElements and throwing NPE, but passing NULL is an error
that causes a crash and a NULL return means an exception has already been
thrown. I didn't want to get into the Scoped* classes just yet, but that
was by far the easiest way to fix this.

Change-Id: I0b31160ee51b96e82539f6514b8412b149dba7c3
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
05554a4ee99ae4696929cb1b9a646dbd7a6c7e76 10-Jan-2011 Andy McFadden <fadden@android.com> Fix start-time setreuid complaints.

The code was checking errno instead of the return value from the call.
This fixes calls to setreuid(), setregid(), and setpgid().

Bug 3131052

Change-Id: I8b6155bd4fa9b941895b35fed62cfc163b420fff
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/base/core/jni/com_android_internal_os_ZygoteInit.cpp