From 03c842dd303df44fc4361a7a3dcbea298be75125 Mon Sep 17 00:00:00 2001 From: Chris Wailes Date: Wed, 4 Mar 2020 13:40:28 -0800 Subject: [PATCH] Teaches the ProcessCpuTracker about USAPs. This CL updates the ProcessCpuTracer.getName method to force a refresh of the process name when the current state indicates that it was named either 'usap32' or 'usap64'. This will prevent false attribution of process statistics to system service processes. Bug: 146614089 Test: Treehugger Change-Id: Ieca4715b7aeb44ef7d1ec98773b25bdfa0a9fc6b --- core/java/com/android/internal/os/ProcessCpuTracker.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/core/java/com/android/internal/os/ProcessCpuTracker.java b/core/java/com/android/internal/os/ProcessCpuTracker.java index f7b77422cdce0..070b9d1a04bca 100644 --- a/core/java/com/android/internal/os/ProcessCpuTracker.java +++ b/core/java/com/android/internal/os/ProcessCpuTracker.java @@ -883,8 +883,11 @@ public class ProcessCpuTracker { private void getName(Stats st, String cmdlineFile) { String newName = st.name; - if (st.name == null || st.name.equals("app_process") - || st.name.equals("")) { + if (st.name == null + || st.name.equals("app_process") + || st.name.equals("") + || st.name.equals("usap32") + || st.name.equals("usap64")) { String cmdName = ProcStatsUtil.readTerminatedProcFile(cmdlineFile, (byte) '\0'); if (cmdName != null && cmdName.length() > 1) { newName = cmdName;