diff options
| -rw-r--r-- | services/core/java/com/android/server/am/ProcessList.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/services/core/java/com/android/server/am/ProcessList.java b/services/core/java/com/android/server/am/ProcessList.java index ae4af5f8171b..c380160c6c2b 100644 --- a/services/core/java/com/android/server/am/ProcessList.java +++ b/services/core/java/com/android/server/am/ProcessList.java @@ -235,15 +235,16 @@ final class ProcessList { Slog.i("XXXXXX", "minfree_adj=" + minfree_adj + " minfree_abs=" + minfree_abs); } - if (Build.SUPPORTED_64_BIT_ABIS.length > 0) { - // Increase the high min-free levels for cached processes for 64-bit - mOomMinFreeHigh[4] = (mOomMinFreeHigh[4]*3)/2; - mOomMinFreeHigh[5] = (mOomMinFreeHigh[5]*7)/4; - } + final boolean is64bit = Build.SUPPORTED_64_BIT_ABIS.length > 0; for (int i=0; i<mOomAdj.length; i++) { int low = mOomMinFreeLow[i]; int high = mOomMinFreeHigh[i]; + if (is64bit) { + // Increase the high min-free levels for cached processes for 64-bit + if (i == 4) high = (high*3)/2; + else if (i == 5) high = (high*7)/4; + } mOomMinFree[i] = (int)(low + ((high-low)*scale)); } |