Merge "KernelCpuUidBpfMapReader: Verify presence of Uids before deleting" am: 907124607f
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1321018 Change-Id: I4b07c438d6b10a6070d19f3cbc0cc9f038c785e4
This commit is contained in:
@@ -16,7 +16,6 @@
|
||||
|
||||
package com.android.internal.os;
|
||||
|
||||
import android.os.StrictMode;
|
||||
import android.os.SystemClock;
|
||||
import android.util.Slog;
|
||||
import android.util.SparseArray;
|
||||
@@ -90,9 +89,21 @@ public abstract class KernelCpuUidBpfMapReader {
|
||||
if (mErrors > ERROR_THRESHOLD) {
|
||||
return;
|
||||
}
|
||||
if (endUid < startUid || startUid < 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
mWriteLock.lock();
|
||||
int firstIndex = mData.indexOfKey(startUid);
|
||||
if (firstIndex < 0) {
|
||||
mData.put(startUid, null);
|
||||
firstIndex = mData.indexOfKey(startUid);
|
||||
}
|
||||
int lastIndex = mData.indexOfKey(endUid);
|
||||
if (lastIndex < 0) {
|
||||
mData.put(endUid, null);
|
||||
lastIndex = mData.indexOfKey(endUid);
|
||||
}
|
||||
mData.removeAtRange(firstIndex, lastIndex - firstIndex + 1);
|
||||
mWriteLock.unlock();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user