Merge "NetworkPolicy: Replace fake allLocks"

am: 1afa2c413e

Change-Id: Iff90737a3d2ade86e8cbf7ac1a2663c4e886e285
This commit is contained in:
Andreas Gampe
2019-01-07 10:27:15 -08:00
committed by android-build-merger

View File

@@ -270,14 +270,12 @@ import java.util.concurrent.TimeUnit;
* enforcement. * enforcement.
* *
* <p> * <p>
* This class uses 2-3 locks to synchronize state: * This class uses 2 locks to synchronize state:
* <ul> * <ul>
* <li>{@code mUidRulesFirstLock}: used to guard state related to individual UIDs (such as firewall * <li>{@code mUidRulesFirstLock}: used to guard state related to individual UIDs (such as firewall
* rules). * rules).
* <li>{@code mNetworkPoliciesSecondLock}: used to guard state related to network interfaces (such * <li>{@code mNetworkPoliciesSecondLock}: used to guard state related to network interfaces (such
* as network policies). * as network policies).
* <li>{@code allLocks}: not a "real" lock, but an indication (through @GuardedBy) that all locks
* must be held.
* </ul> * </ul>
* *
* <p> * <p>
@@ -419,7 +417,8 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
final Object mUidRulesFirstLock = new Object(); final Object mUidRulesFirstLock = new Object();
final Object mNetworkPoliciesSecondLock = new Object(); final Object mNetworkPoliciesSecondLock = new Object();
@GuardedBy("allLocks") volatile boolean mSystemReady; @GuardedBy({"mUidRulesFirstLock", "mNetworkPoliciesSecondLock"})
volatile boolean mSystemReady;
@GuardedBy("mUidRulesFirstLock") volatile boolean mRestrictBackground; @GuardedBy("mUidRulesFirstLock") volatile boolean mRestrictBackground;
@GuardedBy("mUidRulesFirstLock") volatile boolean mRestrictPower; @GuardedBy("mUidRulesFirstLock") volatile boolean mRestrictPower;
@@ -545,7 +544,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
private final ServiceThread mUidEventThread; private final ServiceThread mUidEventThread;
@GuardedBy("allLocks") @GuardedBy({"mUidRulesFirstLock", "mNetworkPoliciesSecondLock"})
private final AtomicFile mPolicyFile; private final AtomicFile mPolicyFile;
private final AppOpsManager mAppOps; private final AppOpsManager mAppOps;