b12e1354f25f04e9c9a71da76c6fca858b7d39d0 |
|
26-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
Maybe fix issue #7211766: bindService() to User u0 While u10 is... ...Forground Sometimes Doesn't Take The main change here is a one-liner in ActiveServices to check the uid when deciding whether to remove an item from mPendingServices. This could cause the problem being seen -- if the same service for two users is starting at the same time, the second one would blow away the pending start of the first one. Unfortunately I have had trouble reproducing the bug, so I don't know if this is actually fixing it. It's a bug, anyway. The reason so much has changed here is because I spread around logging and printing of the user ID associated with operations and objects to make it easier to debug these kind of multi-user things. Also includes some tweaks to the oom manager to allow more background processes (I have seen many times in logs where we thrash through processes because the LRU list is too short), plus to compensate an additional time-based metric for when to get rid of background processes, plus some new logic to try to help things like Chrome keep around their service processes. Change-Id: Icda77fb2a1dd349969e3ff2c8fff0f19b40b31d3
/frameworks/base/services/java/com/android/server/am/ProcessList.java
|
59c009776dae5ccbdfb93d7151ff2065ca049dc3 |
|
30-Jul-2012 |
Craig Mautner <cmautner@google.com> |
Introduce multiple displays with DisplayContent. Fix a couple of bugs that turned up. Remove touch/focus from display. Add iterators for access. Respond to comments. Remove TODOs, and some deviceId parameters. Change-Id: Idcdb4f1979aa7b14634d450fd0333d6eff26994d
/frameworks/base/services/java/com/android/server/am/ProcessList.java
|
f35fe23669aeeebd2db2acb6baacae503dba03a8 |
|
02-Nov-2011 |
Dianne Hackborn <hackbod@google.com> |
Add new OOM adjustment for the "previous" process. This is the process that you had previously been interacting with in the UI before the current one. Treating it specially should allow us to improve the scenario of switching back and forth between two apps. Also add API constent for ICS MR1. Change-Id: Ib3fe4df36b270be11dfd6b7e8d107c9994058a4d
/frameworks/base/services/java/com/android/server/am/ProcessList.java
|
e02c88af7935c72fb90a478375e61e4a94465587 |
|
28-Oct-2011 |
Dianne Hackborn <hackbod@google.com> |
Work on process management. Introduce a new concept of "B" services. All running services are classified as either A or B. B services are later in the LRU list. Their oom_adj is after the home app. This allows us to better pick services to kill based on how long they have running, and should reduce the amount that we end up killing the home app. This temporarly turns on a debug log when the oom_adj of a process is changed. Sorry, I know it is noisy. This is needed to try to track down why some processes are being killed. Also add a flag to the SyncManager's service binding to allow the syncing process to be more aggressively killed if it has done UI. This is to address cases we have seen where sync is causing an 80MB gmail process to be kept around, preventing other process from running. Now what will happen is that the syncing process will aggressively be killed by the system, and can then be restarted in a much lighter-weight state. Do a little tweak in the power manager to allow us to still do smooth brightness changes even when the fancy TV off animation is in use. And get rid of a debug log in the window manager that was accidentally left in. Change-Id: I64a8eeaaa1f096bab29c665fbff804c7f1d029e2
/frameworks/base/services/java/com/android/server/am/ProcessList.java
|
295e3c27e4e3762a002382fc1657f5f0070a3410 |
|
25-Aug-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5214105 and work on issue #5109947. Change-Id: Iff2cfec5280a314989d915aa830c16124f921611 5214105: taking a screenshot while "Android is upgrading..." crashes device 5109947: Race condition between retrieving a content provider and updating its oom adj
/frameworks/base/services/java/com/android/server/am/ProcessList.java
|
7d608423b721e0153f37bfd5eba78fcd2489562d |
|
08-Aug-2011 |
Dianne Hackborn <hackbod@google.com> |
Move OOM kernel settings to activity manager. The activity manager now take care of plugging the correct settings into the OOM killer in the kernel. This is a lot cleaner because it is really central to how the activity manager works, and nobody else cares about them. Taking advantage of this, the activity manager computes what it thinks are appropriate OOM levels based on the RAM and display size of the device. Also a small optization to the package manager to keep a binding to the package install helper for a bit after done using it, to avoid thrashing on it. And some new APIs that are now needed by Settings. Change-Id: I2b2d379194445d8305bde331c19bde91c8f24751
/frameworks/base/services/java/com/android/server/am/ProcessList.java
|