f8880561e67e1da246970b49b14285efd4164ab1 |
|
26-Feb-2016 |
Jeff Sharkey <jsharkey@android.com> |
When system server goes down, crash apps more. Similar to first patch, but now using new "rethrowFromSystemServer()" method which internally translates DeadObjectException into DeadSystemException. New logic over in Log.printlns() now suppresses the DeadSystemException stack traces, since they're misleading and just added pressure to the precious log buffer space. Add some extra RuntimeInit checks to suppress logging-about-logging when the system server is dead. Bug: 27364859 Change-Id: I05316b3e8e42416b30a56a76c09cd3113a018123
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
d888beb9bfca2da6bba303cd7db809ccefa7b996 |
|
18-Feb-2016 |
Andreas Gampe <agampe@google.com> |
Frameworks/base: Use Log.printlns in RuntimeInit Make printlns in Log public-@hide so it can be used. Print uncaught exceptions that will terminate the process in RuntimeInit using printlns, so that long exception traces are not being truncated. Bug: 27245306 Change-Id: Ib24635f0ebdd80bd125e367302cab6a78e6a210a
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
4c79fea9efea7cfa739cf5b5f525ddadb28e52a6 |
|
29-Jan-2016 |
Andreas Gampe <agampe@google.com> |
Frameworks/base: Stop profiling on uncaught exception When "handling" an uncaught exception, make an attempt to stop profiling. In case profiling was active, this will avoid losing the profiling buffer. Bug: 26291225 Change-Id: Ie5f5517b46ed89d0456a4aac9d4ff3b713d1d8aa
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
fbb32f6440ed74a4d27eec03569520580d00da42 |
|
12-Jun-2015 |
Narayan Kamath <narayan@google.com> |
Better systrace slices for application startup. This change adds three new timeslices : - PostFork : As soon as possible after the app forks from the zygote. Can be used in conjunction with the system_server "Start proc:" event to derive an upper bound on fork() and zygote overhead. - RuntimeInit & ActivityThreadMain for ZygoteInit#runtimeInit and ActivityThread#main. ActivityThread#handleBindApplication and higher level functions are already well instrumented in systrace. handleBindApplication should occur immediately after ActivityThread#main. Note that we use the Activity manager tag to make it easier to correlate these new events with surrounding events (Start proc and handleBindApplication) that are already using the AM tag. bug: 21632700 Change-Id: Ibc01f1721f962c913f3c02a51763b6feb1eb6a4d
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
da74a628f55fe32a8f8d8542689032f4f6f1c44c |
|
12-Feb-2015 |
Piotr Jastrzebski <haaawk@google.com> |
Register DDM handlers at the beginning of main method. Compiler initializes RuntimeInit during compilation and stores an initialized version of the class in oat file. Same thing happens to DdmServer which handles DDM packets in JDWP thread started during JVM creation. This means that after the creation of JVM all DDM packets are handled by DdmServer.dispatch and since it's already initialized during compilation it has all framework related handlers already registered. If a packet arrives before AndroidRuntime.startReg is called then framework native methods are not yet registered and the processing of the packet fails with UnsatisfiedLinkError. To fix this problem the registration of framework related DDM handlers is moved to the beginning of ZygoteInit.main and RuntimeInit.main. This means that the handlers won't be registered until main method is called and that's guaranteed to be after AndroidRuntime.startReg is called. It also guarantees that DDM packets will be properly handled as soon as Java code is executed. Bug: 18081539. Change-Id: I9c674f53f3f62d58c46886e0b60698182e08f0c3
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
5232271a41323594ae406be7476b6ca2f08af3d8 |
|
27-Aug-2014 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #17146552: system anr Add a safe path for Slog.wtf that doesn't acquire an activity manager lock or block in any way. Change-Id: I8fef8251a0cb85081442cae55d85063944248d15
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
29564cd24589867f653cd22cabbaac6493cfc530 |
|
07-Aug-2014 |
Narayan Kamath <narayan@google.com> |
Remove system_server classes from the boot image. We set the system_server classpath in the environment (like we do with BOOTCLASSPATH). After the zygote forks the system_server, we dexopt the classpath (if needed) and then launch the system server with the correct PathClassLoader. This needed several small / medium refactorings : - The logic for connecting to installd is now in a separate class and belongs in the system_server. - SystemService / SystemServiceManager have now moved to classes.jar. They are only used from there, and since they use Class.forName, we want them to be loaded by the system_server classloader, and not the bootclassloader. - BootReceiver now moves to frameworks.jar, because it is used by ActivityThread and friends. bug: 16555230 Change-Id: Ic84f0b2baf611eeedff6d123cb7191bb0259e600
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
69eb6f57e34fb78050adcedcda8479cf2ad0c418 |
|
09-Apr-2014 |
Mark Salyzyn <salyzyn@google.com> |
Native Runtime: Add LOG_ID_CRASH Change-Id: I4e3a82636901c5169cc6b714a4fec815cd757c58
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
35980b2cf51c06c1bdad66b7f8fb629d9c17052f |
|
03-Sep-2013 |
Eric Rowe <erowe@google.com> |
Add PID and application to Java crash printout Bug: 10568405 Change-Id: I508e89bf7ea58e15a8460099036e270139b2e2a9
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
941adc95e121332b49aedb5406b6037a6395aea6 |
|
27-Aug-2013 |
Christopher Tate <ctate@google.com> |
Make sure to actually log when Log.wtf() hiccups Bug 10494724 Change-Id: I687d7df73a8f4594d42955f100d928e98bbd9b30
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
4280c4a93ea17f2e9d3f651e49d8c13dc3fb92aa |
|
16-Mar-2012 |
Jeff Brown <jeffbrown@google.com> |
If an application calls System.exit() terminate it immediately. There is no graceful way to kill Android application processes. They typically have many threads running doing various things When System.exit() is called, those threads just keep going while the cleanup actions run until the process finally. Performing shutdown actions can easily cause more harm than good. For example, closing the Binder driver's file descriptor may cause other threads waiting on Binder to wake up and then crash in nasty ways after receiving EBADF. So when an Android application exits, skip the cleanup and just call _exit() to end it all. Bug: 6168809 Change-Id: I29790c064426a0bf7dae7cdf444eea3eef1d5275
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
16f5f5cc9d4c480fac3dc7f176f3f1edfbd256f4 |
|
16-Mar-2012 |
Jeff Brown <jeffbrown@google.com> |
Delete useless JNI methods. Change-Id: Ie7c7638c79fc9c6a43f45604ad9a40ebc58b93c7
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
e1dfcb7ab01fb991079ec1f70f75281a0ca9073e |
|
08-Jul-2011 |
Elliott Hughes <enh@google.com> |
Pass the targetSdkVersion through to the zygote-forked dalvik. This will let dalvik implement backwards-compatibile behaviors based on an app's targetSdkVersion. Bug: 4772166 Change-Id: I935c5ea9144e8b4e6e21089547287486e2234b7f
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
8568db534118fc14cc28100306d51626464ff319 |
|
29-Jun-2011 |
Jesse Wilson <jessewilson@google.com> |
Move socket tagging from libcore. Change-Id: I7515896936c5bbd212c88e2801b831914219a925
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
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/java/com/android/internal/os/RuntimeInit.java
|
43a17654cf4bfe7f1ec22bd8b7b32daccdf27c09 |
|
07-Apr-2011 |
Joe Onorato <joeo@google.com> |
Remove the deprecated things from Config.java. These haven't been working since before 1.0. Change-Id: Ic2e8fa68797ea9d486f4117f3d82c98233cdab1e
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
f890fab5a6715548e520a6f010a3bfe7607ce56e |
|
20-Dec-2010 |
Patrick Dubroy <dubroy@google.com> |
Ensure bitmaps aren't freed while referenced from a display list Also removes the reference queue finalizers. They aren't necessary anymore now that Bitmaps are allocated in the heap.
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
8718a51a5b6daab57fd55f5a6c083aa51c9f0f94 |
|
15-Oct-2010 |
Jesse Wilson <jessewilson@google.com> |
Close System.out and System.err streams when they are made unreachable. Change-Id: I295a9b2e5eb2d4e94b042f3a51e2f39b58a47d49 http://b/3072844
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
02890fd0f98b3b8d98baf0bda1ea906afd723d8b |
|
07-Aug-2010 |
Romain Guy <romainguy@google.com> |
Replace Bitmap's finalizers with PhantomReferences. This change also removes the use of SoftReferences for View's drawing cache. A bitmap now creates a PhantomReference enqueued in a reference queue provided by the new Finalizers class. This queue is polled from a thread started after forking zygote. That thread is in charge of clearing the references after GC runs and of calling reclaim() on them. The reclaim() method is now how finalizers are run. Note that a PhantomReference cannot be kept in the instance it refers to, which is why they are kept in a separate List. Change-Id: If3c1a5e9dc23fa49e34857860d730f5cf5ad5926
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
438d0595121a7a2cdf19741e76e3c0e21a5c173d |
|
10-Jun-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Introduce "StrictMode" This is a new public API for developers to opt-in to strict rules about what they're allowed to do on certain threads. (this is the public face of the @hide dalvik.system.BlockGuard, added recently...) In practice this will be used for developers to opt-in to declaring that they don't want to be allowed to do various operations (such as disk I/O or network operations) on their main UI threads. (these operations are often accidental, or even when they are fast come with a good chance of being slow or very slow in some cases....) Implementation wise, this is just a thread-local integer that has a bitmask of the things that aren't allowed, and more bits for saying what the violation penalty is. The penalties, of which multiple can be chosen, include: * logging * dropbox uploading for analysis/reporting * annoying dialog * full-on crashing These are all only very roughly implemented at this point, but all parts now minimally work end-to-end now, so this is a good checkpoint commit before this gets too large. Future CLs will polish all the above 4 penalties, including checksumming of stacktraces and minimizing penalties for duplicate violations. Change-Id: Icbe61a2e950119519e7364030b10c3c28d243abe
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
c9421ba1f46d9f9aeee833e1fde2cc263b058411 |
|
12-Mar-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2492387: system server crash in WallpaperManagerService Also move some of the important framework error logs over to Slog. Change-Id: If6697c3e4f18498612ebd7b0e4e4f042fd713372
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
1c9131c91f27c8258dfad0a92cee105275f5422a |
|
13-Feb-2010 |
Dan Egnor <egnor@google.com> |
Remove all traces of the old checkin service (and its associated parental control interfaces) from the framework.
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
60d8762413e8daba5f73559786312a9ec5e3b827 |
|
17-Dec-2009 |
Dan Egnor <egnor@google.com> |
DropBox logging of app & system server crashes. The crashes are also reported to the event log (and of course the main logcat, like they always have been). Ordinary Log.e(t,m,e) isn't dropboxed but there's a new Log.wtf() which always is. (Still @pending in this change.) Add a hook to IPowerManager to crash the system server on demand (only for apps with REBOOT permission, since it's basically a restart). This is not exposed in PowerManager, must be invoked directly -- mostly this is there so "Bad Behavior" in dev tools can do it.
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
b7f0367cec1c744aa66ef397b0244e25d507491c |
|
10-Dec-2009 |
Dan Egnor <egnor@google.com> |
Eliminate CrashData and friends. (CrashData was a custom-marshalled crash-info class used for a server crash reporting system I am deprecating). Use ApplicationErrorReport.CrashInfo instead to report crash details (mostly the stack trace) from RuntimeInfo to ActivityManagerService, since we're likely to need the crash information in that form anyway. Remove the (long-disabled) flags and support for the "Debug" button in the crash dialog. Further gut the ICheckinService interface by removing the crash-reporting APIs (and everything that calls them), plus the synchronous checkin() method (which has been stubbed out for a while now). A new dropbox-based crash reporting system is in the works, but not part of this change.
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
d0f80d445644bfc08b62339f01766b924e42dc4d |
|
19-Sep-2009 |
Jesse Wilson <jessewilson@google.com> |
Setting the default HTTP user agent at runtime init. I can't do this in HttpURLConnection directly, since that would cause a forbidden dependency from Dalvik on Android.
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
e540833fdff4d58e37c9ba859388e24e2945ed45 |
|
05-Sep-2009 |
Bob Lee <crazybob@crazybob.org> |
Integrated the profiler into the framework. We run it all the time if the persist.sampling_profiler system property is set. Saves snapshots to the SD card.
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|
54b6cfa9a9e5b861a9930af873580d6dc20f773c |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
/frameworks/base/core/java/com/android/internal/os/RuntimeInit.java
|