From d59e2a90459d62a23dc17675deebda9391372247 Mon Sep 17 00:00:00 2001 From: Daniel Colascione Date: Thu, 19 Mar 2020 13:59:15 -0700 Subject: [PATCH] RESTRICT AUTOMERGE: Autocork package invalidations Bug: 140788621 Test: m; strace -s512 -f -p 1 2>&1 | grep 'cache_key' Change-Id: Iceaabee5ea8eac42934c1cc4914cdf43d2f11f58 --- core/java/android/content/pm/PackageManager.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index 21f27f646fc14..1eac1d5ce566b 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -8036,13 +8036,16 @@ public abstract class PackageManager { sApplicationInfoCache.disableLocal(); } + private static final PropertyInvalidatedCache.AutoCorker sCacheAutoCorker = + new PropertyInvalidatedCache.AutoCorker(PermissionManager.CACHE_KEY_PACKAGE_INFO); + /** * Invalidate caches of package and permission information system-wide. * * @hide */ public static void invalidatePackageInfoCache() { - PropertyInvalidatedCache.invalidateCache(PermissionManager.CACHE_KEY_PACKAGE_INFO); + sCacheAutoCorker.autoCork(); } // Some of the flags don't affect the query result, but let's be conservative and cache