diff options
author | Andreas Gampe <agampe@google.com> | 2018-09-05 16:52:31 -0700 |
---|---|---|
committer | Andreas Gampe <agampe@google.com> | 2018-09-05 17:05:26 -0700 |
commit | b58893078b49a8e6a6bb9cd9b2b66560874c1a5b (patch) | |
tree | 3fe1ce248c59fcb4969ab9f9ddcccc0408c8f801 | |
parent | 22f9af73dbb11c4012b60cae4a1855155c98df21 (diff) |
Frameworks: Annotate trivial @GuardedBy in packages
Add @GuardedBy for simple functions that require locks and have a name in
one of the frameworks naming styles for locks ("^.*(Locked|LPw|LPr|L[a-zA-Z]|UL|AL|NL)$").
Derived by errorprone.
Bug: 73000847
Test: m
Change-Id: Id14322b0a6206152cd2933c968e0a6f470fcee09
4 files changed, 24 insertions, 0 deletions
diff --git a/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java b/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java index 0a720a5b234e..62207c5517ec 100644 --- a/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java +++ b/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java @@ -145,6 +145,7 @@ public class ExternalStorageProvider extends FileSystemProvider { } } + @GuardedBy("mRootsLock") private void updateVolumesLocked() { mRoots.clear(); diff --git a/packages/SettingsProvider/src/com/android/providers/settings/GenerationRegistry.java b/packages/SettingsProvider/src/com/android/providers/settings/GenerationRegistry.java index 3e6c3f2e5b85..044ec867aef4 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/GenerationRegistry.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/GenerationRegistry.java @@ -111,6 +111,7 @@ final class GenerationRegistry { } } + @GuardedBy("mLock") private MemoryIntArray getBackingStoreLocked() { if (mBackingStore == null) { // One for the global table, two for system and secure tables for a diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java index 500199f7a521..290a4f83a40a 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java @@ -722,6 +722,7 @@ public class SettingsProvider extends ContentProvider { } } + @GuardedBy("mLock") private void dumpForUserLocked(int userId, PrintWriter pw) { if (userId == UserHandle.USER_SYSTEM) { pw.println("GLOBAL SETTINGS (user " + userId + ")"); @@ -1179,6 +1180,7 @@ public class SettingsProvider extends ContentProvider { && UserHandle.getAppId(Binder.getCallingUid()) >= Process.FIRST_APPLICATION_UID; } + @GuardedBy("mLock") private Setting getSsaidSettingLocked(PackageInfo callingPkg, int owningUserId) { // Get uid of caller (key) used to store ssaid value String name = Integer.toString( @@ -1709,6 +1711,7 @@ public class SettingsProvider extends ContentProvider { } } + @GuardedBy("mLock") private List<String> getSettingsNamesLocked(int settingsType, int userId) { // Don't enforce the instant app whitelist for now -- its too prone to unintended breakage // in the current form. @@ -1801,6 +1804,7 @@ public class SettingsProvider extends ContentProvider { * * @returns whether the enabled location providers changed. */ + @GuardedBy("mLock") private boolean updateLocationProvidersAllowedLocked(String value, String tag, int owningUserId, boolean makeDefault, boolean forceNotify) { if (TextUtils.isEmpty(value)) { @@ -2718,6 +2722,7 @@ public class SettingsProvider extends ContentProvider { } } + @GuardedBy("secureSettings.mLock") private void ensureSecureSettingAndroidIdSetLocked(SettingsState secureSettings) { Setting value = secureSettings.getSettingLocked(Settings.Secure.ANDROID_ID); diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java index e57483a8c734..389d627a9bd6 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsState.java @@ -274,6 +274,7 @@ final class SettingsState { } // The settings provider must hold its lock when calling here. + @GuardedBy("mLock") public int getVersionLocked() { return mVersion; } @@ -283,6 +284,7 @@ final class SettingsState { } // The settings provider must hold its lock when calling here. + @GuardedBy("mLock") public void setVersionLocked(int version) { if (version == mVersion) { return; @@ -293,6 +295,7 @@ final class SettingsState { } // The settings provider must hold its lock when calling here. + @GuardedBy("mLock") public void removeSettingsForPackageLocked(String packageName) { boolean removedSomething = false; @@ -317,6 +320,7 @@ final class SettingsState { } // The settings provider must hold its lock when calling here. + @GuardedBy("mLock") public List<String> getSettingNamesLocked() { ArrayList<String> names = new ArrayList<>(); final int settingsCount = mSettings.size(); @@ -328,6 +332,7 @@ final class SettingsState { } // The settings provider must hold its lock when calling here. + @GuardedBy("mLock") public Setting getSettingLocked(String name) { if (TextUtils.isEmpty(name)) { return mNullSetting; @@ -350,6 +355,7 @@ final class SettingsState { } // The settings provider must hold its lock when calling here. + @GuardedBy("mLock") public void resetSettingDefaultValueLocked(String name) { Setting oldSetting = getSettingLocked(name); if (oldSetting != null && !oldSetting.isNull() && oldSetting.getDefaultValue() != null) { @@ -366,6 +372,7 @@ final class SettingsState { } // The settings provider must hold its lock when calling here. + @GuardedBy("mLock") public boolean insertSettingLocked(String name, String value, String tag, boolean makeDefault, String packageName) { if (TextUtils.isEmpty(name)) { @@ -407,6 +414,7 @@ final class SettingsState { } // The settings provider must hold its lock when calling here. + @GuardedBy("mLock") public boolean deleteSettingLocked(String name) { if (TextUtils.isEmpty(name) || !hasSettingLocked(name)) { return false; @@ -429,6 +437,7 @@ final class SettingsState { } // The settings provider must hold its lock when calling here. + @GuardedBy("mLock") public boolean resetSettingLocked(String name) { if (TextUtils.isEmpty(name) || !hasSettingLocked(name)) { return false; @@ -458,6 +467,7 @@ final class SettingsState { } // The settings provider must hold its lock when calling here. + @GuardedBy("mLock") public void destroyLocked(Runnable callback) { mHandler.removeMessages(MyHandler.MSG_PERSIST_SETTINGS); if (callback != null) { @@ -471,6 +481,7 @@ final class SettingsState { } } + @GuardedBy("mLock") private void addHistoricalOperationLocked(String type, Setting setting) { if (mHistoricalOperations == null) { return; @@ -553,6 +564,7 @@ final class SettingsState { } } + @GuardedBy("mLock") private void updateMemoryUsagePerPackageLocked(String packageName, String oldValue, String newValue, String oldDefaultValue, String newDefaultValue) { if (mMaxBytesPerAppPackage == MAX_BYTES_PER_APP_PACKAGE_UNLIMITED) { @@ -588,10 +600,12 @@ final class SettingsState { mPackageToMemoryUsage.put(packageName, newSize); } + @GuardedBy("mLock") private boolean hasSettingLocked(String name) { return mSettings.indexOfKey(name) >= 0; } + @GuardedBy("mLock") private void scheduleWriteIfNeededLocked() { // If dirty then we have a write already scheduled. if (!mDirty) { @@ -600,6 +614,7 @@ final class SettingsState { } } + @GuardedBy("mLock") private void writeStateAsyncLocked() { final long currentTimeMillis = SystemClock.uptimeMillis(); @@ -771,6 +786,7 @@ final class SettingsState { } } + @GuardedBy("mLock") private void readStateSyncLocked() { FileInputStream in; try { @@ -820,6 +836,7 @@ final class SettingsState { } } + @GuardedBy("mLock") private void parseSettingsLocked(XmlPullParser parser) throws IOException, XmlPullParserException { |