OSDN Git Service

Fix a regression in setting oom_adj for cached processes
authorAmith Yamasani <yamasani@google.com>
Mon, 24 Jun 2019 23:47:44 +0000 (16:47 -0700)
committerAmith Yamasani <yamasani@google.com>
Mon, 24 Jun 2019 23:47:44 +0000 (16:47 -0700)
commit853d509c53445ce6c76635bf7b4c2745e2c1b11c
tree9b183a61269dc2afcd6f7affe8e307dcf1336531
parent956197e8e03706cda1c1d4885f33862029dd5ff4
Fix a regression in setting oom_adj for cached processes

If a cached process happens to be part of a cycle,
it might end up at a score of 1001, which is never
reported to lmkd and hence not killed when under
memory pressure.

Fix: When recomputing oom adjust scores for apps in cycles,
use the last computed raw adj value instead of
UNKNOWN_ADJ.

Fixes: 135948152
Test: atest CtsAppTestCases:ActivityManagerProcessStateTests
      Launch specific known apps that have internal cycles
        and ensure they end up with an oom_adj in the 900s.

Change-Id: I000e6a06cd23873d09b9df3e9ddd280232757d3a
services/core/java/com/android/server/am/OomAdjuster.java