Commit Graph

44623 Commits

Author SHA1 Message Date
James Mattis
e23f928666 Merge "Only pass the NRI for removal in NRI#binderDied" am: 24fa1d7a8f am: 48f3878591 am: 743bf14a13
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1741953

Change-Id: I89c7e2b31f700da5a448b06abbb9d2d6378c7901
2021-07-09 00:40:37 +00:00
James Mattis
743bf14a13 Merge "Only pass the NRI for removal in NRI#binderDied" am: 24fa1d7a8f am: 48f3878591
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1741953

Change-Id: I96cf6ee7fa18900fc0c4ea97b424b634c433083c
2021-07-09 00:25:24 +00:00
James Mattis
48f3878591 Merge "Only pass the NRI for removal in NRI#binderDied" am: 24fa1d7a8f
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1741953

Change-Id: Iac74fa029c1736ae5a094d80766acbb838a6e212
2021-07-09 00:05:48 +00:00
James Mattis
24fa1d7a8f Merge "Only pass the NRI for removal in NRI#binderDied" 2021-07-08 23:54:46 +00:00
Chalard Jean
50227eacc9 [automerger skipped] Merge "Remove exclusivity restriction of multiple preferences" am: 278b92f6a0 am: b819ff4142 -s ours am: 5843b474a0 -s ours
am skip reason: Merged-In I6912db753c8b4a194aa7af92b01ca6dcfec10d8b with SHA-1 de5efb90cb is already in history

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1719390

Change-Id: I9d89c3519a491ff2e729469cec35edee30c30934
2021-07-08 04:28:38 +00:00
Chalard Jean
5843b474a0 [automerger skipped] Merge "Remove exclusivity restriction of multiple preferences" am: 278b92f6a0 am: b819ff4142 -s ours
am skip reason: Merged-In I6912db753c8b4a194aa7af92b01ca6dcfec10d8b with SHA-1 de5efb90cb is already in history

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1719390

Change-Id: Ifdf1eab16db9955e42cf1fe233edbbe9e9504d06
2021-07-08 04:15:18 +00:00
Chalard Jean
b819ff4142 Merge "Remove exclusivity restriction of multiple preferences" am: 278b92f6a0
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1719390

Change-Id: Ib41c5050c389ac115221005f565ff4f59a799502
2021-07-08 04:05:45 +00:00
Chalard Jean
278b92f6a0 Merge "Remove exclusivity restriction of multiple preferences" 2021-07-08 03:50:34 +00:00
Remi NGUYEN VAN
544872f16c Merge "Ensure wifi reconnects before waiting for metered" am: 14f0d14c14 am: 577f3e158d am: 9438d0fa5a
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1757311

Change-Id: I116618f8a244902727c43e4ba529ca9826f10666
2021-07-08 01:25:44 +00:00
Remi NGUYEN VAN
9438d0fa5a Merge "Ensure wifi reconnects before waiting for metered" am: 14f0d14c14 am: 577f3e158d
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1757311

Change-Id: I22f911df5cb9ba95fdfe672ddd07502fa3e19f1e
2021-07-08 01:12:18 +00:00
Remi NGUYEN VAN
577f3e158d Merge "Ensure wifi reconnects before waiting for metered" am: 14f0d14c14
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1757311

Change-Id: Icdf3557348e3a4f58c7e988057609cbbbd9e5e33
2021-07-08 00:54:52 +00:00
Remi NGUYEN VAN
14f0d14c14 Merge "Ensure wifi reconnects before waiting for metered" 2021-07-08 00:40:37 +00:00
James Mattis
8f03680fdb Only pass the NRI for removal in NRI#binderDied
When NetworkRequestInfo#binderDied is called in ConnectivityService,
only pass the NRI to handleRemoveNetworkRequest. This is to prevent a
potential crash when unlinkDeathRecipient is called twice for the same
NRI.

Also, as a cleanup, don't iterate mRequests in the log message on binderDied.

As per the bug, the chain of events leading to a potential crash are:

- `Connectivity.NetworkRequestInfo#binderDied()` is called for an NRI
tracking multiple `NetworkRequest` items. This can happen for a TRACK_DEFAULT
request filed by a UID on a different preference than the default, which
copies the request list.
- This in turn triggers multiple `EVENT_RELEASE_NETWORK_REQUEST` events
for the same NRI, one for reach `NetworkRequest` tracked.
- When handling `EVENT_RELEASE_NETWORK_REQUEST`, each `NetworkRequest`
that is passed in will then be used to look up the parent NRI that originally
sent it to be released.
- Therefore if an NRI was tracking three requests, it would trigger three
release network events, then each request would be used to look up the
same NRI again when handling said release event.
- Finally, `ConnectivityService.NetworkRequestInfo#unlinkDeathRecipient` is
called for the NRI in question. Using the scenario above, that means we could
call `unlinkDeathRecipient` multiple times for the same NRI if it was tracking
multiple network requests causing the associated crash.
- If `unlinkDeathRecipient` is called more than once for the same NRI, it will
cause the crash listed in this bug.
- The fix is to only call handleRemoveNetworkRequest for the NRI once. This
works since when removing the NRI, we iterate over all of its requests to
remove them. By only calling handleRemoveNetworkRequest once, it's ensured
`unlinkDeathRecipient` for this NRI as part of
`Connectivity.NetworkRequestInfo#binderDied()` is only called  once and not
potentially multiple times.

Bug: 185541983
Test: atest FrameworksNetTests
Change-Id: I2a2ad4ec6d415423182a1856a898779203658f8b
2021-07-07 17:16:59 -07:00
Automerger Merge Worker
e3012d8e40 Merge "Merge "Recheck if the network state in expedited job is unexpected." into sc-dev am: 1ec983c471 am: a4d94a61fd" into sc-v2-dev-plus-aosp 2021-07-07 18:57:32 +00:00
Sudheer Shanka
96d8ff8313 Merge "Recheck if the network state in expedited job is unexpected." into sc-dev am: 1ec983c471 am: a4d94a61fd
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/15191249

Change-Id: I637678dfecd375cce092e9e5e92ec75cd59bf045
2021-07-07 18:57:27 +00:00
Sudheer Shanka
0810fff8a5 Merge "Recheck if the network state in expedited job is unexpected." into sc-dev am: 1ec983c471 am: a20e2702dd
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/15191249

Change-Id: I9688f4989a22f77530a2dd47e37eda934fb2929e
2021-07-07 18:57:26 +00:00
Sudheer Shanka
a20e2702dd Merge "Recheck if the network state in expedited job is unexpected." into sc-dev am: 1ec983c471
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/15191249

Change-Id: I02fb4442949afbe1b6ba4330f4986f7369f97851
2021-07-07 18:35:55 +00:00
Sudheer Shanka
a4d94a61fd Merge "Recheck if the network state in expedited job is unexpected." into sc-dev am: 1ec983c471
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/15191249

Change-Id: I7dbb85aa1aae966318a4d256f48d99bed396cb02
2021-07-07 18:34:46 +00:00
Sudheer Shanka
1ec983c471 Merge "Recheck if the network state in expedited job is unexpected." into sc-dev 2021-07-07 18:20:02 +00:00
Sudheer Shanka
ce96fa05a7 Recheck if the network state in expedited job is unexpected.
Unfortunately, this could happen if there is a delay in updating the
network rules for the app hosting the job.

Bug: 179319857
Test: atest tests/cts/hostside/src/com/android/cts/net/HostsideRestrictBackgroundNetworkTests.java
Change-Id: I60cfd5c5946a4cd0ef5ebf0c1e56b0667cc3164d
Ignore-AOSP-First: Expedited jobs are not available in AOSP yet
2021-07-07 18:19:50 +00:00
paulhu
aa0743d7c4 Remove exclusivity restriction of multiple preferences
- Each network preference has been assigned a priority value so
  that netd can know which uid range rule has higher priority. So
  remove the restriction that all network preferences are
  exclusive.
- Add priority check when getting request for uid.

Bug: 171872461
Test: atest FrameworksNetTests
(cherry-pick from ag/14731887)
Merged-In: I6912db753c8b4a194aa7af92b01ca6dcfec10d8b

Change-Id: I6912db753c8b4a194aa7af92b01ca6dcfec10d8b
2021-07-07 23:06:43 +08:00
Paul Hu
33e0aa7489 Merge "Remove exclusivity restriction of multiple preferences" into sc-dev am: fd301c05c5 am: f534ef200d
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14731887

Change-Id: I4c88f8516ed9ebe4510f7f8485514a49a098ffcd
2021-07-07 15:03:54 +00:00
Paul Hu
32292c4288 Merge "Remove exclusivity restriction of multiple preferences" into sc-dev am: fd301c05c5 am: cebf317bef
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14731887

Change-Id: I2dedac6259ce55e4c356a1a92fd34631af7f2586
2021-07-07 15:00:12 +00:00
Paul Hu
f534ef200d Merge "Remove exclusivity restriction of multiple preferences" into sc-dev am: fd301c05c5
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14731887

Change-Id: I99af87f0106609da19f93306a8c06b79d4634fed
2021-07-07 14:47:31 +00:00
Paul Hu
cebf317bef Merge "Remove exclusivity restriction of multiple preferences" into sc-dev am: fd301c05c5
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/14731887

Change-Id: I7df8b49e044891f69a2af7477ab9b8fab0353b50
2021-07-07 14:46:32 +00:00
Paul Hu
fd301c05c5 Merge "Remove exclusivity restriction of multiple preferences" into sc-dev 2021-07-07 14:36:22 +00:00
Treehugger Robot
b6b9322f01 Merge "Fix flake in testConnectivityDiagnosticsCallbackOnConnectivityReported" am: 1d2ad89424 am: 5c7e4c179b am: 24713b1f4c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1755630

Change-Id: Ie6d68159a07d7890d4b6d39a4be4c0869a91c9b9
2021-07-07 04:41:00 +00:00
Treehugger Robot
51f17658d0 Merge "Fix flake in testMobileDataAlwaysOn" am: 02ea3f55c1 am: b9b4ee6d0e am: 0c865b6ff9
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1755251

Change-Id: Ia95bccb2f5be6b24ad528ee0f617085b5cf1d3c0
2021-07-07 04:40:54 +00:00
paulhu
de5efb90cb Remove exclusivity restriction of multiple preferences
- Each network preference has been assigned a priority value so
  that netd can know which uid range rule has higher priority. So
  remove the restriction that all network preferences are
  exclusive.
- Add priority check when getting request for uid.

Bug: 171872461
Test: atest FrameworksNetTests
Ignore-AOSP-First: Needs cherry-picks
Change-Id: I6912db753c8b4a194aa7af92b01ca6dcfec10d8b
2021-07-07 12:38:16 +08:00
Treehugger Robot
24713b1f4c Merge "Fix flake in testConnectivityDiagnosticsCallbackOnConnectivityReported" am: 1d2ad89424 am: 5c7e4c179b
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1755630

Change-Id: I32db3adb9f1a9c95b99ace428044e331df780821
2021-07-07 04:27:16 +00:00
Treehugger Robot
0c865b6ff9 Merge "Fix flake in testMobileDataAlwaysOn" am: 02ea3f55c1 am: b9b4ee6d0e
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1755251

Change-Id: I5ca65eba0f45846df6b75d11d42b67c81fb177c3
2021-07-07 04:27:08 +00:00
Treehugger Robot
5c7e4c179b Merge "Fix flake in testConnectivityDiagnosticsCallbackOnConnectivityReported" am: 1d2ad89424
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1755630

Change-Id: I4539d7b5d254c09d629e4d0bdb8b5db4a9d9db96
2021-07-07 04:11:26 +00:00
Treehugger Robot
b9b4ee6d0e Merge "Fix flake in testMobileDataAlwaysOn" am: 02ea3f55c1
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1755251

Change-Id: Ide762b07177c861a7308690a8e39040de2414506
2021-07-07 04:11:20 +00:00
Treehugger Robot
1d2ad89424 Merge "Fix flake in testConnectivityDiagnosticsCallbackOnConnectivityReported" 2021-07-07 03:53:17 +00:00
Treehugger Robot
02ea3f55c1 Merge "Fix flake in testMobileDataAlwaysOn" 2021-07-07 03:52:38 +00:00
Remi NGUYEN VAN
5137f4f513 Merge changes I99ce72bd,I5a11a802 am: 527ffb6f0c am: 3499d73016 am: 013e9789b7
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1756971

Change-Id: If6f17f77cbafa44153f8d856ee417e6fa82c5f6c
2021-07-07 03:45:33 +00:00
Paul Hu
5762612976 [automerger skipped] Merge "Use Netd new added/removed uid range methods" am: 51bfbbfb1b am: cef78638b5 -s ours am: 7a6f3364c9 -s ours
am skip reason: Merged-In I08bbdbcb8450b08e6208fa730137348550f9e3d2 with SHA-1 de2a23958d is already in history

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1755053

Change-Id: I5c1d9753627dcd90d90f133b959677df5c47c8b9
2021-07-07 03:45:28 +00:00
Remi NGUYEN VAN
013e9789b7 Merge changes I99ce72bd,I5a11a802 am: 527ffb6f0c am: 3499d73016
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1756971

Change-Id: Ic26bab1331de18f8b362849e275f986d0b7fa97e
2021-07-07 03:32:44 +00:00
Paul Hu
7a6f3364c9 [automerger skipped] Merge "Use Netd new added/removed uid range methods" am: 51bfbbfb1b am: cef78638b5 -s ours
am skip reason: Merged-In I08bbdbcb8450b08e6208fa730137348550f9e3d2 with SHA-1 de2a23958d is already in history

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1755053

Change-Id: Ifa99945cc5b761eb2f1a45c21838b5db078d584b
2021-07-07 03:32:37 +00:00
Remi NGUYEN VAN
3499d73016 Merge changes I99ce72bd,I5a11a802 am: 527ffb6f0c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1756971

Change-Id: Icb435dbe7be5eb125b88336263fd3519139501db
2021-07-07 03:21:57 +00:00
Paul Hu
cef78638b5 Merge "Use Netd new added/removed uid range methods" am: 51bfbbfb1b
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1755053

Change-Id: I1ab928e64501c47adbb1416555640084098cf72f
2021-07-07 03:21:51 +00:00
Remi NGUYEN VAN
527ffb6f0c Merge changes I99ce72bd,I5a11a802
* changes:
  Add retries for WifiManager#connect
  Use WifiManager.connect to reconnect wifi
2021-07-07 03:07:21 +00:00
Paul Hu
51bfbbfb1b Merge "Use Netd new added/removed uid range methods" 2021-07-07 03:07:10 +00:00
paulhu
0e79d95332 Use Netd new added/removed uid range methods
Replace network[Add|Remove]UidRanges to
network[Add|Remove]UidRangesParcel. The new methods are passing
NativeUidRangeConfig which contains priority value for each uid
range rules.

Bug: 171872461
Test: atest FrameworksNetTests
Test: atest HostsideVpnTests
(cherry-pick from ag/14911836)
Merged-In: I08bbdbcb8450b08e6208fa730137348550f9e3d2

Change-Id: I08bbdbcb8450b08e6208fa730137348550f9e3d2
2021-07-07 03:06:32 +00:00
Maciej Żenczykowski
bc23c11f6b remove obsolete/no-op NativeQtaguidTest am: 2aabf4138e am: 4f8727b8a7 am: aa6e564726
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1757412

Change-Id: I0d7c7f5d2635c9982caeebab1439e404cb7c90f2
2021-07-07 02:29:22 +00:00
Treehugger Robot
cbe5253cbe [automerger skipped] add test for /system/etc/bpf/{netd,clatd}.o using correct struct sizes am: cba9f66098 -s ours am: 2001d44cde -s ours
am skip reason: Merged-In Ibaedb8fcb28591ffba1506514f2305d55712a26b with SHA-1 bbc4ea32bc is already in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/15217930

Change-Id: I90be4ce14b66d199fa6956d410b7ce3551c34041
2021-07-07 02:29:16 +00:00
Treehugger Robot
56bddf410a [automerger skipped] add test for /system/etc/bpf/{netd,clatd}.o using correct struct sizes am: cba9f66098 am: 9cf3d2a8e6 -s ours
am skip reason: Merged-In Ibaedb8fcb28591ffba1506514f2305d55712a26b with SHA-1 bbc4ea32bc is already in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/15217930

Change-Id: I920027712db793751a3a894539fc6c6a6e377283
2021-07-07 02:28:44 +00:00
Treehugger Robot
9cf3d2a8e6 add test for /system/etc/bpf/{netd,clatd}.o using correct struct sizes am: cba9f66098
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/15217930

Change-Id: If33f5d605a5bc6fea760e5c42de74f91a4a21375
2021-07-07 02:17:34 +00:00
Maciej Żenczykowski
aa6e564726 remove obsolete/no-op NativeQtaguidTest am: 2aabf4138e am: 4f8727b8a7
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1757412

Change-Id: Ifcfbc5d49ebffaf177ab0e5e3e500f933fd068ce
2021-07-07 02:17:15 +00:00
Treehugger Robot
2001d44cde [automerger skipped] add test for /system/etc/bpf/{netd,clatd}.o using correct struct sizes am: cba9f66098 -s ours
am skip reason: Merged-In Ibaedb8fcb28591ffba1506514f2305d55712a26b with SHA-1 bbc4ea32bc is already in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/15217930

Change-Id: Ie39372d2403e42bfa874000533e7eabae0e0ec05
2021-07-07 02:16:35 +00:00