Commits

Felipe Leme authored f0823858e50
Split mRulesLock in 2 distinct locks. mRulesLock was used to lock Life, the Universe, and Everything. Or more specifically, UID rules, network policies, and other state. As such, it was frequently a cause of slowness in the device due to lock contention. For example, isNetworkMetered() is a method called by ConnectivityService and it only needs to lock the network policies info, but because it required the full lock, it would be often on hold when the UID state is changed by onUidStateChanged(). BUG: 29397827 Change-Id: I7aac8f33e150c52cf7a682f0290a91a2c350b8de