diff --git a/services/java/com/android/server/net/NetworkStatsService.java b/services/java/com/android/server/net/NetworkStatsService.java index a9d4b59622..1a56b80d7e 100644 --- a/services/java/com/android/server/net/NetworkStatsService.java +++ b/services/java/com/android/server/net/NetworkStatsService.java @@ -616,10 +616,12 @@ public class NetworkStatsService extends INetworkStatsService.Stub { // persist if beyond new thresholds final long currentTime = mTime.hasCache() ? mTime.currentTimeMillis() : System.currentTimeMillis(); - mDevRecorder.maybePersistLocked(currentTime); - mXtRecorder.maybePersistLocked(currentTime); - mUidRecorder.maybePersistLocked(currentTime); - mUidTagRecorder.maybePersistLocked(currentTime); + synchronized (mStatsLock) { + mDevRecorder.maybePersistLocked(currentTime); + mXtRecorder.maybePersistLocked(currentTime); + mUidRecorder.maybePersistLocked(currentTime); + mUidTagRecorder.maybePersistLocked(currentTime); + } // re-arm global alert registerGlobalAlert();