Loading AconfigFlags.bp +8 −3 Original line number Diff line number Diff line Loading @@ -49,7 +49,7 @@ aconfig_declarations_group { "android.media.tv.flags-aconfig-java", "android.multiuser.flags-aconfig-java", "android.net.platform.flags-aconfig-java", "android.net.vcn.flags-aconfig-java", "android.net.vcn.flags-aconfig-java-export", "android.net.wifi.flags-aconfig-java", "android.nfc.flags-aconfig-java", "android.os.flags-aconfig-java", Loading Loading @@ -1063,16 +1063,21 @@ java_aconfig_library { } // VCN // TODO:376339506 Move the VCN code, the flag declaration and // java_aconfig_library to framework-connectivity-b aconfig_declarations { name: "android.net.vcn.flags-aconfig", package: "android.net.vcn", container: "system", container: "com.android.tethering", exportable: true, srcs: ["core/java/android/net/vcn/*.aconfig"], } java_aconfig_library { name: "android.net.vcn.flags-aconfig-java", name: "android.net.vcn.flags-aconfig-java-export", aconfig_declarations: "android.net.vcn.flags-aconfig", mode: "exported", min_sdk_version: "35", defaults: ["framework-minus-apex-aconfig-java-defaults"], } Loading core/java/android/net/vcn/flags.aconfig +1 −11 Original line number Diff line number Diff line package: "android.net.vcn" container: "system" container: "com.android.tethering" flag { name: "safe_mode_config" Loading @@ -16,13 +16,3 @@ flag { is_exported: true bug: "376339506" } No newline at end of file flag { name: "fix_config_garbage_collection" namespace: "vcn" description: "Handle race condition in subscription change" bug: "370862489" metadata { purpose: PURPOSE_BUGFIX } } No newline at end of file services/core/java/com/android/server/VcnManagementService.java +5 −15 Original line number Diff line number Diff line Loading @@ -48,7 +48,6 @@ import android.net.LinkProperties; import android.net.Network; import android.net.NetworkCapabilities; import android.net.NetworkRequest; import android.net.vcn.Flags; import android.net.vcn.IVcnManagementService; import android.net.vcn.IVcnStatusCallback; import android.net.vcn.IVcnUnderlyingNetworkPolicyListener; Loading Loading @@ -890,21 +889,12 @@ public class VcnManagementService extends IVcnManagementService.Stub { while (configsIterator.hasNext()) { final ParcelUuid subGrp = configsIterator.next(); if (Flags.fixConfigGarbageCollection()) { if (!subGroups.contains(subGrp)) { // Trim subGrps with no more subscriptions; must have moved to another subGrp logDbg("Garbage collect VcnConfig for group=" + subGrp); configsIterator.remove(); shouldWrite = true; } } else { final List<SubscriptionInfo> subscriptions = subMgr.getSubscriptionsInGroup(subGrp); if (subscriptions == null || subscriptions.isEmpty()) { // Trim subGrps with no more subscriptions; must have moved to another subGrp configsIterator.remove(); shouldWrite = true; } } } if (shouldWrite) { Loading tests/vcn/java/com/android/server/VcnManagementServiceTest.java +0 −3 Original line number Diff line number Diff line Loading @@ -70,7 +70,6 @@ import android.net.Network; import android.net.NetworkCapabilities; import android.net.NetworkRequest; import android.net.Uri; import android.net.vcn.Flags; import android.net.vcn.IVcnStatusCallback; import android.net.vcn.IVcnUnderlyingNetworkPolicyListener; import android.net.vcn.VcnConfig; Loading Loading @@ -293,8 +292,6 @@ public class VcnManagementServiceTest { doReturn(Collections.singleton(TRANSPORT_WIFI)) .when(mMockDeps) .getRestrictedTransports(any(), any(), any()); mSetFlagsRule.enableFlags(Flags.FLAG_FIX_CONFIG_GARBAGE_COLLECTION); } Loading Loading
AconfigFlags.bp +8 −3 Original line number Diff line number Diff line Loading @@ -49,7 +49,7 @@ aconfig_declarations_group { "android.media.tv.flags-aconfig-java", "android.multiuser.flags-aconfig-java", "android.net.platform.flags-aconfig-java", "android.net.vcn.flags-aconfig-java", "android.net.vcn.flags-aconfig-java-export", "android.net.wifi.flags-aconfig-java", "android.nfc.flags-aconfig-java", "android.os.flags-aconfig-java", Loading Loading @@ -1063,16 +1063,21 @@ java_aconfig_library { } // VCN // TODO:376339506 Move the VCN code, the flag declaration and // java_aconfig_library to framework-connectivity-b aconfig_declarations { name: "android.net.vcn.flags-aconfig", package: "android.net.vcn", container: "system", container: "com.android.tethering", exportable: true, srcs: ["core/java/android/net/vcn/*.aconfig"], } java_aconfig_library { name: "android.net.vcn.flags-aconfig-java", name: "android.net.vcn.flags-aconfig-java-export", aconfig_declarations: "android.net.vcn.flags-aconfig", mode: "exported", min_sdk_version: "35", defaults: ["framework-minus-apex-aconfig-java-defaults"], } Loading
core/java/android/net/vcn/flags.aconfig +1 −11 Original line number Diff line number Diff line package: "android.net.vcn" container: "system" container: "com.android.tethering" flag { name: "safe_mode_config" Loading @@ -16,13 +16,3 @@ flag { is_exported: true bug: "376339506" } No newline at end of file flag { name: "fix_config_garbage_collection" namespace: "vcn" description: "Handle race condition in subscription change" bug: "370862489" metadata { purpose: PURPOSE_BUGFIX } } No newline at end of file
services/core/java/com/android/server/VcnManagementService.java +5 −15 Original line number Diff line number Diff line Loading @@ -48,7 +48,6 @@ import android.net.LinkProperties; import android.net.Network; import android.net.NetworkCapabilities; import android.net.NetworkRequest; import android.net.vcn.Flags; import android.net.vcn.IVcnManagementService; import android.net.vcn.IVcnStatusCallback; import android.net.vcn.IVcnUnderlyingNetworkPolicyListener; Loading Loading @@ -890,21 +889,12 @@ public class VcnManagementService extends IVcnManagementService.Stub { while (configsIterator.hasNext()) { final ParcelUuid subGrp = configsIterator.next(); if (Flags.fixConfigGarbageCollection()) { if (!subGroups.contains(subGrp)) { // Trim subGrps with no more subscriptions; must have moved to another subGrp logDbg("Garbage collect VcnConfig for group=" + subGrp); configsIterator.remove(); shouldWrite = true; } } else { final List<SubscriptionInfo> subscriptions = subMgr.getSubscriptionsInGroup(subGrp); if (subscriptions == null || subscriptions.isEmpty()) { // Trim subGrps with no more subscriptions; must have moved to another subGrp configsIterator.remove(); shouldWrite = true; } } } if (shouldWrite) { Loading
tests/vcn/java/com/android/server/VcnManagementServiceTest.java +0 −3 Original line number Diff line number Diff line Loading @@ -70,7 +70,6 @@ import android.net.Network; import android.net.NetworkCapabilities; import android.net.NetworkRequest; import android.net.Uri; import android.net.vcn.Flags; import android.net.vcn.IVcnStatusCallback; import android.net.vcn.IVcnUnderlyingNetworkPolicyListener; import android.net.vcn.VcnConfig; Loading Loading @@ -293,8 +292,6 @@ public class VcnManagementServiceTest { doReturn(Collections.singleton(TRANSPORT_WIFI)) .when(mMockDeps) .getRestrictedTransports(any(), any(), any()); mSetFlagsRule.enableFlags(Flags.FLAG_FIX_CONFIG_GARBAGE_COLLECTION); } Loading