Merge "Fix IsolatedUidAllocator for non-primary users." into qt-qpr1-dev am: 074d6fbd3f
Change-Id: I5694831cc81fe5e1b90740d369d6148971ac617c
This commit is contained in:
@@ -433,9 +433,7 @@ public final class ProcessList {
|
||||
|
||||
@GuardedBy("ProcessList.this.mService")
|
||||
void freeIsolatedUidLocked(int uid) {
|
||||
// Strip out userId
|
||||
final int appId = UserHandle.getAppId(uid);
|
||||
mUidUsed.delete(appId);
|
||||
mUidUsed.delete(uid);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -346,10 +346,21 @@ public class ActivityManagerServiceTest {
|
||||
verifyUidRangesNoOverlap(range, range2);
|
||||
verifyIsolatedUidAllocator(range2);
|
||||
|
||||
// Free both, then try to allocate the maximum number of UID ranges
|
||||
// Free both
|
||||
allocator.freeUidRangeLocked(appInfo);
|
||||
allocator.freeUidRangeLocked(appInfo2);
|
||||
|
||||
// Verify for a secondary user
|
||||
ApplicationInfo appInfo3 = new ApplicationInfo();
|
||||
appInfo3.processName = "com.android.test.app";
|
||||
appInfo3.uid = 1010000;
|
||||
final IsolatedUidRange range3 = allocator.getOrCreateIsolatedUidRangeLocked(
|
||||
appInfo3.processName, appInfo3.uid);
|
||||
validateAppZygoteIsolatedUidRange(range3);
|
||||
verifyIsolatedUidAllocator(range3);
|
||||
|
||||
allocator.freeUidRangeLocked(appInfo3);
|
||||
// Try to allocate the maximum number of UID ranges
|
||||
int maxNumUidRanges = (Process.LAST_APP_ZYGOTE_ISOLATED_UID
|
||||
- Process.FIRST_APP_ZYGOTE_ISOLATED_UID + 1) / Process.NUM_UIDS_PER_APP_ZYGOTE;
|
||||
for (int i = 0; i < maxNumUidRanges; i++) {
|
||||
|
||||
Reference in New Issue
Block a user