Commit graph android_packages_modules_Co.../Vcn/flags/flags.aconfig
Message SHA1
Change VCN flag container to tethering
VCN will be moved to Tetherig module eventually. This patch updates
the VCN flag host container to the module and updates the framework.jar
to access the flags via "exported" mode.

Followup CLs will move VCN to a seperate java_sdk_library and the
aconfig lib will be removed from
framework-minus-apex-aconfig-declarations and moved to that
java_sdk_library. A build system flag will control whether the VCN
will be in platform or the tethering module.

Bug: 376339506
Test: presubmit
Flag: EXEMPT flag container value change
Change-Id: I0434abce40dbadeec20f373f46484c41a08947ff

Yan Yan   commited 2024-11-14 08:59:06 -08:00
ce68d8c97f
Clean up fix_config_garbage_collection
To mainline VCN, we need to first change the VCN flag host
container to be the tethering module and then use a buid flag to
control whether to include VCN in the non-updatable platform or
the module. After the container changes, when VCN is still in the
platform, the VCN code can only access flags via "exported" mode,
and only API flags are exportable and accessible. Thus the
fix_config_garbage_collection flag needs to be handled

It is safe to clean up this flag because it is a low risk bug fix
and it has been in teamfood for a week with no issue being seen.

Bug: 370862489
Test: FrameworksVcnTests; CtsVcnTestCases
Flag: EXEMPT flag clean up
Change-Id: If38b46735e7b20d918b7483c16b30101416b0a6c

Yan Yan   commited 2024-11-14 08:58:42 -08:00
a940fde652
Clean up flag safe_mode_timeout_config
Bug: 317406085
Test: atest FrameworksVcnTests && atest CtsVcnTestCases
Flag: EXEMPT flag clean up
Change-Id: I2f838156ffa9a2242747f4782e4d05833674e393

Yan Yan   commited 2024-10-31 11:52:17 -07:00
2860fd1bbf
Merge "Add a flag to control the exposure of VCN APIs for mainline migration" into main
Yan Yan   authored and   Gerrit Code Review   commited 2024-10-30 22:05:22 +00:00
983a8a9fb3
Fix VcnConfig garbage collection
The garbageCollectAndWriteVcnConfigsLocked is for removing
configs whose subgroups do not have any subscriptions. This
patch fixes the issue of it in handling race condition when
subscription changes.

Previously the garbage collection checks a subGroup's
subscriptions based on SubscriptionManager. When
SubscriptionManager and TelephonySubscriptionSnapshot are
out-of-synced, the config of an active VCN instance will be
removed. It can cause NPE in getUnderlyingNetworkPolicy. This
patch fixes it by checking subscriptions against the snapshot.

This patch also fixes the safety check in
getUnderlyingNetworkPolicy so that if VCN instance exists but
its config does not, it will not attempt querying data from
the VcnConfig

Bug: 370862489
Test: FrameworksVcnTests(new tests); CtsVcnTestCases
Flag: android.net.vcn.fix_config_garbage_collection
Change-Id: Id54adabcc1910102a2ab20c432b693a8f52c5c95

Yan Yan   commited 2024-10-30 11:16:11 -07:00
a2284ca391
Add a flag to control the exposure of VCN APIs for mainline migration
Bug: 369703242
Test: build
Flag: android.net.vcn.mainline_vcn_module_api
Change-Id: I728275a90b0dea8add60631e034ec081a07f23d7

Yan Yan   commited 2024-10-29 23:40:46 +00:00
c03d453cf2
Clean up flag network_metric_monitor
Bug: 282996138
Test: atest FrameworksVcnTests && atest CtsVcnTestCases
Flag: EXEMPT flag clean up
Change-Id: I300d9c391d0aeb26ca6a589960244641de76ac1b

Yan Yan   commited 2024-10-17 11:38:35 -07:00
133d92eb2c
Clean up FLAG_VALIDATE_NETWORK_ON_IPSEC_LOSS
This CL also fixes incorrect code comments

Bug: 329139898
Test: atest FrameworksVcnTests && atest CtsVcnTestCases
Flag: EXEMPT flag cleanup
Change-Id: Ib61dfbf9c3e147766530dbc519a785b8b13fac9d

Yan Yan   commited 2024-10-10 13:15:07 -07:00
56c0b9f0ec
Clean up FLAG_EVALUATE_IPSEC_LOSS_ON_LP_NC_CHANGE
Bug: 323238888
Test: atest FrameworksVcnTests && atest CtsVcnTestCases
Flag: EXEMPT flag cleanup
Change-Id: I18a6c5b32806b6cd20bfa6b5b475d220be975a7c

Yan Yan   commited 2024-10-10 11:53:55 -07:00
aa3971b14c
Clean up FLAG_ENFORCE_MAIN_USER
Bug: 310310661
Test: atest FrameworksVcnTests && atest CtsVcnTestCases
Flag: EXEMPT flag cleanup
Change-Id: I461c4167397608fffbf366c90e4d3bb42e2564f5

Yan Yan   commited 2024-10-10 11:49:41 -07:00
06dc8ecb93
Clean up FLAG_HANDLE_SEQ_NUM_LEAP
Bug: 332598276
Test: atest FrameworksVcnTests && atest CtsVcnTestCases
Flag: EXEMPT flag clean up
Change-Id: I3d0dd6251337d85a4c6f193d9a627e66024a79ab

Yan Yan   commited 2024-10-10 11:01:37 -07:00
87c094581d
Clean up allow_disable_ipsec_loss_detector flag
Bug: 336638836
Test: atest FrameworksVcnTests && atest CtsVcnTestCases
Flag: EXEMPT flag clean up
Change-Id: Ifbeaf7c4baa31a782a0632345af9016f6b6456fb

Yan Yan   commited 2024-09-05 18:56:40 -07:00
e07e82c4d4
Merge "Make VCN HSUM compatible" into main
Yan Yan   authored and   Gerrit Code Review   commited 2024-05-08 21:57:42 +00:00
472ec212b1
Make VCN HSUM compatible
Require VCN to be used by a "main user" instead of a "system user"
since "system user" will no longer be a full user on HSUM devices

Bug: 310310661
Test: FrameworksVcnTests, CtsVcnTestCases on non-hsum and hsum devices
Flag: android.net.vcn.enforce_main_user
Change-Id: I5abfa7ba82055cd953083b1ab3f83e61bafd8a55

Yan Yan   commited 2024-05-07 18:40:04 +00:00
0468b73169
Merge "Support disabling IPsec packet loss detector" into main
Yan Yan   authored and   Gerrit Code Review   commited 2024-05-07 17:26:41 +00:00
1e09d8f2b0
Support disabling IPsec packet loss detector
Allow disabling detector for better configurability

Bug: 336638836
Test: atest FrameworksVcnTests(new tests) && atest CtsVcnTestCases
Flag: android.net.vcn.allow_disable_ipsec_loss_detector
Change-Id: Icd7183d12fb287399a500ea9c0ee4125c749275c

Yan Yan   commited 2024-05-06 19:10:07 +00:00
d978bdcffa
RESTRICT AUTOMERGE
Set the container field of aconfig flags

Test: printflags --format='{package}:{container}:' | grep "::"
Bug: 312769710
Flag: NONE
Change-Id: I84fda0d5e9813940609436d825738ff786908ff0

Oriol Prieto Gasco   authored and   Oriol Prieto Gascó   commited 2024-05-03 11:42:54 +00:00
359ee4691e
VCN: Handle sequence number leap in packet loss detector
This pacth enables IPsec packet loss detector to handle the case when
there is an intentional sequence number leap on the server's downlink.

Previously the detector assumes that sequence number will always
increase consecutively, which is not true. During load balancing the
server might add a big leap on the sequence number intentionally. In
such case a high packet loss rate does not always indicate a lossy
network. At the same time, a low loss rate does mean the network is
not lossy

Bug: 332598276
Test: atest FrameworksVcnTests (new tests) && atest CtsVcnTestCases
Change-Id: I163cb274d293a305499fd60f7ad6eed394af5a4d

Yan Yan   commited 2024-04-13 02:40:54 +00:00
7e52cc07b1
Add flags for IPsec packet loss detector improvements
Bug: 329139898
Bug: 323238888
Test: build
Change-Id: I635e5432e42c5fb4d903b4c14910e60e2e38f12b

Yan Yan   commited 2024-03-20 22:04:48 +00:00
97a248154b
Export flags used in FlaggedApi annotations
Before calling a flagged API, client code must check the value of the flag
which gates it. Those flags must be exported in order to be accessible from
containers other than the container where the flag and the API are hosted.

Bug: 320984775
Bug: 322839671

Test: m all_aconfig_declarations
Test: printflags --format='{fully_qualified_name}:{is_exported}' | grep true

Change-Id: Ie5af316c327208b52b3afd74502ca66c41bb6f70

Oriol Prieto Gasco   commited 2024-03-08 14:14:31 +00:00
19e2df49e7
Support IPsec packet loss detector
This CL creates an abstract class NetworkMetricMonitor and a
subclass IpSecPacketLossDetector. IpSecPacketLossDetector
is responsible for continuously monitoring IPsec packet loss
and reporting to the caller when the data loss rate surpass
a threshold. This detector allows the VCN to switch from
the underlying network that has bad quality.

This CL also defines new carrier configs that specify the
data loss threshold and detecting frequency

Bug: 282996138
Test: atest FrameworksVcnTests(new tests), CtsVcnTestCases
Change-Id: I5f4b8e1821bdbb37f0a6de6e1584f8e3c87273f3

Yan Yan   commited 2024-01-10 23:08:40 +00:00
421db12030
Support adjustable VCN safe mode timeout
Bug: 317406085
Test: atest FrameworksVcnTests(new tests), CtsVcnTestCases
Change-Id: I8f5b6cb4e8286331626d4d39b864f0298657cab6

Yan Yan   commited 2024-01-03 23:19:05 +00:00
f9532ffdbb
Add a flag for VCN safe mode configurability
Add aconfig for VCN feature flags and the flag for VCN
safe mode configurability

Bug: 276358140
Test: verified flags are accessible
Change-Id: I4a54445a4238c81a409604be16c90ef341eed638
Merged-In: I4a54445a4238c81a409604be16c90ef341eed638

Yan Yan   commited 2023-10-26 01:31:49 +00:00
904c87775c