From 131145386b8cc3684a980d90123b9c5ee192a5e4 Mon Sep 17 00:00:00 2001 From: Jing Ji Date: Tue, 11 May 2021 17:36:50 -0700 Subject: [PATCH] Skip updating the process group of system_server Previously launching/dismissing any activities within system_server would update the process group of system_server, those customized cpuset settings of some threads within system_server would get messed up because of it. Now as those remaining activities within system_server are fairly simple, we could skip updating the process group of system_server, keep using the existing default one. Bug: 172245618 Test: Manual - launch/dismiss activities in system_server & cat cpuset Change-Id: Ia4d58cc4b8fad1c4ff1a52a05c58f9e62b71df30 --- services/core/java/com/android/server/am/OomAdjuster.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/services/core/java/com/android/server/am/OomAdjuster.java b/services/core/java/com/android/server/am/OomAdjuster.java index 40db086f377b8..01bbb039fdbab 100644 --- a/services/core/java/com/android/server/am/OomAdjuster.java +++ b/services/core/java/com/android/server/am/OomAdjuster.java @@ -394,6 +394,10 @@ public class OomAdjuster { mProcessGroupHandler = new Handler(adjusterThread.getLooper(), msg -> { final int pid = msg.arg1; final int group = msg.arg2; + if (pid == ActivityManagerService.MY_PID) { + // Skip setting the process group for system_server, keep it as default. + return true; + } if (Trace.isTagEnabled(Trace.TRACE_TAG_ACTIVITY_MANAGER)) { Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "setProcessGroup " + msg.obj + " to " + group);