Commit Graph

42941 Commits

Author SHA1 Message Date
Maciej Żenczykowski
b43c235eeb Merge "Tethering/bpf_progs/offload - replace all TC_ACT_OK with TC_ACT_PIPE" am: dc8388ca08 am: e953144055
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1807971

Change-Id: I5bdd166ce5179e001c6ef77c6daa60001e67b6e9
2021-08-25 07:50:22 +00:00
Maciej Żenczykowski
e953144055 Merge "Tethering/bpf_progs/offload - replace all TC_ACT_OK with TC_ACT_PIPE" am: dc8388ca08
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1807971

Change-Id: Iad650917305d67b799d059e4b285af5fd3f54709
2021-08-25 07:37:55 +00:00
Maciej Żenczykowski
dc8388ca08 Merge "Tethering/bpf_progs/offload - replace all TC_ACT_OK with TC_ACT_PIPE" 2021-08-25 07:19:28 +00:00
Maciej Żenczykowski
6e66a36367 Tethering/bpf_progs/offload - replace all TC_ACT_OK with TC_ACT_PIPE
The correct return code to keep on processing any further TC
attached programs is 'TC_ACT_PIPE' and not 'TC_ACT_OK' (which
is terminal).

Without this the ipv6 tether offload program causes termination
of processing and the ipv6 clatd offload program never actually
handles any packets (while tethering is active).

This results in lack of bpf xlat64 offloading for tethered ipv4
traffic on an ipv6-only (cellular) network.

This in turn means incoming TCP packets get GRO'ed, do not get
bpf offloaded, and get delivered to the clat daemon, which
due to them being bigger than the mtu (due to gro) cannot
handle them and discards them.

This results in poor performance, since tcp falls back to 1 mss/mtu
sized packet per rtt.

Tested via tethering a linux laptop on an ipv6-only cellular connection
and downloading the linux kernel from kernel.org via 'wget -6' and 'wget -4'.
Before:
  IPv6: over 2MB/s, observed:
    5805 packets, including 4 sackOK
  IPv4: under 1MB/s, observed:
    9300 packets, including 8 sackOK, 387 sack 1, 501 sack 2, 2310 sack 3
After:
  IPv6: over 7MB/s, observed:
    16702 packets, including 4 sackOK
  IPv4: over 9MB/s, observed:
    32755 packets, including 2 sackOK

Test: builds, TreeHugger, see above
Bug: 195624908
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I623dacb5a37dc689cea34499c3906c11fcaf946c
2021-08-24 23:24:19 +00:00
Lorenzo Colitti
e7edc0d8e6 Give EthernetTetheringTest the restricted networks permission. am: 8fbadf4ac5 am: c1256c4cf3
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1807157

Change-Id: I513d625b151068c33ac1e9e2b66db811b0f034b5
2021-08-24 09:03:50 +00:00
Lorenzo Colitti
c1256c4cf3 Give EthernetTetheringTest the restricted networks permission. am: 8fbadf4ac5
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1807157

Change-Id: I13defb1e00586393e91ca19100cf437482a64090
2021-08-24 08:54:53 +00:00
Lorenzo Colitti
8fbadf4ac5 Give EthernetTetheringTest the restricted networks permission.
This test fails on devices where physical Ethernet interfaces are
available but marked restricted, like cuttlefish.

Bug: 197462993
Test: test-only change
Change-Id: I15c991b2e43e2d5e823dcdcfbd74adfd9b2f6f08
2021-08-24 15:18:54 +09:00
Chalard Jean
45e1f3bbde Merge "Fix an infinite loop with network offers" am: 77992bbfbb am: 72ed43d6dc
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1800007

Change-Id: I638dcb91d51989bc7cf0f4d01a4f013689db2b50
2021-08-20 06:49:50 +00:00
Chalard Jean
72ed43d6dc Merge "Fix an infinite loop with network offers" am: 77992bbfbb
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1800007

Change-Id: I1fe463232308fbc73753dc8d19f269142f6f8776
2021-08-20 06:39:30 +00:00
Chalard Jean
77992bbfbb Merge "Fix an infinite loop with network offers" 2021-08-20 06:17:31 +00:00
Lorenzo Colitti
a5688238a0 Merge "bpf: don't offload IPv4 packets with TCP port 21 (ftp) and 1723 (pptp)" am: ad8fb7fce4 am: b6ea38e832
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1802476

Change-Id: I3f16d6d1ccaac0ce0981ca56c638aab6a0c41103
2021-08-20 03:58:54 +00:00
Lorenzo Colitti
b6ea38e832 Merge "bpf: don't offload IPv4 packets with TCP port 21 (ftp) and 1723 (pptp)" am: ad8fb7fce4
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1802476

Change-Id: I2ca694a0154b3043092890cfd272e7b86cca3fb5
2021-08-20 03:39:28 +00:00
Lorenzo Colitti
ad8fb7fce4 Merge "bpf: don't offload IPv4 packets with TCP port 21 (ftp) and 1723 (pptp)" 2021-08-20 03:24:09 +00:00
Hungming Chen
bc85178435 bpf: don't offload IPv4 packets with TCP port 21 (ftp) and 1723 (pptp)
Bypass the IPv4 TCP packets with port 21 (ftp) and 1723 (pptp) from
BPF offload because these packets need the netfilter conntrack helper.

Bug: 195914327
Test: manual test as the follows
1. Connect to ftp.slackware.com with port 21 in active mode.
2. Check the PORT command success.
   Command:  PORT 192,168,62,128,174,17
   Response: 200 PORT command successful.
3. Download a file.

Change-Id: I8e3b8d9323eb0e572f20c74442b55d4ee95abc2f
2021-08-19 14:29:25 +00:00
Chalard Jean
bb902a5fee Fix an infinite loop with network offers
When the avoidBadWifi configuration is false and not overridden,
a WiFi network that was validated in the past but becomes
unvalidated needs to outscore a cell network that is validated.
This is happening correctly when the stack compares two networks.
However, when the stack compares an existing network to an offer
for a cellular network, the offer was automatically considered
not to yield. This would mean the stack would be requesting cell
out of the telephony factory, only for that network to lose to
WiFi and be discarded immediately, then recreated again etc.

When there is some other reason cell should be up (such as the
"mobile always on" setting being active), this would not be
visible because the cell network would have another reason not
to be torn down.

Have offers correctly account for the current value of the
configuration and setting. This has the ranking of the offer
lose against WiFi like the actual network loses, meaning the
offer is not needed.

This also requires updating the offers whenever the value of
the setting changes.

Test: new test for this, also ConnectivityServiceTest
Bug: 195441367
Change-Id: I4fe5de98bc15bcf9bbbe25c6c7c8a7ba382f8db7
2021-08-19 22:53:41 +09:00
Aaron Huang
2a00b80275 Merge "Bypass cellular battery stats test if telephony is not supported" am: 1c603e7ec3 am: d347dad799
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1796589

Change-Id: I96428c05cb74c533b83083e183f82714d20a46be
2021-08-19 06:07:19 +00:00
Aaron Huang
d347dad799 Merge "Bypass cellular battery stats test if telephony is not supported" am: 1c603e7ec3
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1796589

Change-Id: I2e10702cee72d81da0564fb29f5fcddc465775c9
2021-08-19 05:54:28 +00:00
Aaron Huang
1c603e7ec3 Merge "Bypass cellular battery stats test if telephony is not supported" 2021-08-19 05:37:59 +00:00
Aaron Huang
771970a7ce [automerger skipped] Merge "Skip wifi stats test if link layer stats is not supported" am: cf79fcba3b -s ours am: 171905cb5f -s ours
am skip reason: Merged-In I592dd5f1d6e13b020beadb11b9d913857a82e524 with SHA-1 58b493abf6 is already in history

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

Change-Id: I76acb92e9174fcef2c48303f1de4d5e9c59c4948
2021-08-19 03:54:59 +00:00
Aaron Huang
171905cb5f [automerger skipped] Merge "Skip wifi stats test if link layer stats is not supported" am: cf79fcba3b -s ours
am skip reason: Merged-In I592dd5f1d6e13b020beadb11b9d913857a82e524 with SHA-1 58b493abf6 is already in history

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

Change-Id: Ie00207c8598911d6d4af814909bbd74ff209edc2
2021-08-19 03:36:54 +00:00
Aaron Huang
cf79fcba3b Merge "Skip wifi stats test if link layer stats is not supported" 2021-08-19 03:23:22 +00:00
Xin Li
2790b1fc6e [automerger skipped] Merge "Merge sc-dev-plus-aosp-without-vendor@7634622" into stage-aosp-master am: e534ce4c55 -s ours
am skip reason: Merged-In I5a33f959c8ae5a34584f57508f392038e44062e7 with SHA-1 17bc178920 is already in history

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

Change-Id: I08ecc56fd381455cbe952748dece0a00000dfc0c
2021-08-17 18:36:18 +00:00
Xin Li
e534ce4c55 Merge "Merge sc-dev-plus-aosp-without-vendor@7634622" into stage-aosp-master 2021-08-17 18:15:09 +00:00
Aaron Huang
1e49ed0e84 Bypass cellular battery stats test if telephony is not supported
This test requires a cell network so the test will be failed if
the device does not support telephony. Add a condition to check
if the device supports telephony and skip cellular battery stats
test if telephony is not supported.

Bug: 196231205
Test: atest CtsNetTestCases:BatteryStatsManagerTest
Change-Id: I9ddc1da2a3f83f3fd2ab59059185f2f7a8d08701
2021-08-17 07:13:16 +00:00
Aaron Huang
114a5b2fd3 Skip wifi stats test if link layer stats is not supported
Wifi link layer is an optional feature so this test will be
failed on wifi stats check if a device does not support it.
Add a check to know if the  device supports wifi link layer
stats and skip it if it is not supported.

Bug: 195518957
Test: CtsNetTestCases:BatteryStatsManagerTest
Change-Id: I592dd5f1d6e13b020beadb11b9d913857a82e524
Merged-In: I592dd5f1d6e13b020beadb11b9d913857a82e524
2021-08-17 07:12:54 +00:00
Remi NGUYEN VAN
882c640caa Merge "Fix NetworkCapabilities MTS on S, CTS on S+module" am: 7262180c07 am: 6180b47f92
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1796369

Change-Id: Id02a4659d9e27a6fffc075cdaac878c94a436f42
2021-08-17 03:08:16 +00:00
Remi NGUYEN VAN
6180b47f92 Merge "Fix NetworkCapabilities MTS on S, CTS on S+module" am: 7262180c07
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1796369

Change-Id: Id701a83c714eba3d8f56401c6bb8c91a02687d27
2021-08-17 02:54:25 +00:00
Remi NGUYEN VAN
7262180c07 Merge "Fix NetworkCapabilities MTS on S, CTS on S+module" 2021-08-17 02:34:44 +00:00
Treehugger Robot
0c0b45e6b5 Merge "Add a unit test for a bug in registerDefaultNetworkCallback." am: b8178678df am: eabf1851e8
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1796367

Change-Id: I659d9d2c079cb01081e7996e0ee4f081c81c9a9c
2021-08-17 02:00:48 +00:00
Treehugger Robot
eabf1851e8 Merge "Add a unit test for a bug in registerDefaultNetworkCallback." am: b8178678df
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1796367

Change-Id: I409ec9838a208647604d8975135bb408ae54c575
2021-08-17 01:47:05 +00:00
Treehugger Robot
b8178678df Merge "Add a unit test for a bug in registerDefaultNetworkCallback." 2021-08-17 01:32:39 +00:00
Lorenzo Colitti
bbadec37d2 Add a unit test for a bug in registerDefaultNetworkCallback.
Currently, when a VPN app calls registerDefaultNetworkCallback,
it will always get its own VPN, even if the VPN app called
VpnService.Builder#addDisallowedApplication to take itself out
of the VPN's UID ranges.

Add a test for the current incorrect behaviour.

Also fix an indentation error elsewhere.

Bug: 195265065
Test: test-only change
Change-Id: Id9648ea71fc7ae10855aa311beeb7975569d17f2
2021-08-17 01:36:54 +09:00
Treehugger Robot
3d75600716 Merge "Fix ConnectivityDiagnosticsManagerTest for MTS" am: 3d45c4e432 am: 56ee46f814
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1793509

Change-Id: If83395a7cab0e3e2f5107ae7ba8839a8022b068e
2021-08-16 11:10:27 +00:00
Treehugger Robot
56ee46f814 Merge "Fix ConnectivityDiagnosticsManagerTest for MTS" am: 3d45c4e432
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1793509

Change-Id: I18e5cc4fc8f5174682164911844d9d961948f937
2021-08-16 11:00:54 +00:00
Treehugger Robot
3d45c4e432 Merge "Fix ConnectivityDiagnosticsManagerTest for MTS" 2021-08-16 10:51:19 +00:00
Treehugger Robot
4fbdc30d3e Merge "Fix a flake in ConnectivityDiagnostics" am: 1ac3e27399 am: 79b4f30495
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1796368

Change-Id: Ie4a7bd523342c93ca426305153ad8cc312346cae
2021-08-16 09:29:59 +00:00
Treehugger Robot
79b4f30495 Merge "Fix a flake in ConnectivityDiagnostics" am: 1ac3e27399
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1796368

Change-Id: If68391d8131cb0d64fe7bfcfdea192fadc24d1cf
2021-08-16 09:12:48 +00:00
Remi NGUYEN VAN
5b8e2e9935 Fix NetworkCapabilities MTS on S, CTS on S+module
restrictCapabilitiesForTestNetwork was renamed after S release to be
included in a mainline release, but this causes the MTS test to fail on
S if the Connectivity module is not updated, and CTS to fail if the
connectivity module is updated.

Mark the test as @ConnectivityModuleTest so it can be skipped on
non-connectivity module MTS tests (such as NetworkStack tests), and add
back the previous method name to keep CTS passing.

Bug: 196755836
Test: atest NetworkCapabilitiesTest
Change-Id: Ibd6c2e62e5949ec6d93e9f6e4fc05129c29b94f8
2021-08-16 18:03:37 +09:00
Treehugger Robot
1ac3e27399 Merge "Fix a flake in ConnectivityDiagnostics" 2021-08-16 09:01:58 +00:00
Treehugger Robot
770721c281 [automerger skipped] Merge "Remove unused directories in Connectivity" am: 381ea1f1b1 am: 48181ab964 -s ours
am skip reason: Merged-In Ie3a058b904cb2e3704c3a0725c8f720f81bb235e with SHA-1 f9e7c2a543 is already in history

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

Change-Id: Icc5c2a37af69449393a7cc7093823c90efb1766c
2021-08-16 07:11:53 +00:00
Chalard Jean
4da146bd2f Fix a flake in ConnectivityDiagnostics
Bug: none
Test: ConnectivityServiceTest
Change-Id: I9242226be976e7c346addcbaf7e2b0154a3829f7
2021-08-16 16:05:06 +09:00
Treehugger Robot
48181ab964 Merge "Remove unused directories in Connectivity" am: 381ea1f1b1
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1793470

Change-Id: I2d9d147016b4fc4060a4b04b75a4a00c10876847
2021-08-16 06:57:16 +00:00
Treehugger Robot
381ea1f1b1 Merge "Remove unused directories in Connectivity" 2021-08-16 06:43:07 +00:00
Xin Li
3ec4468fb7 Merge sc-dev-plus-aosp-without-vendor@7634622
Merged-In: I5a33f959c8ae5a34584f57508f392038e44062e7
Change-Id: Ib4e5e75ee8bbe19806bdc2f69590d164fb75774b
2021-08-14 06:31:05 +00:00
Xin Li
e78344b11f [automerger skipped] Merge stage-aosp-sc-ts-dev before making it an upstream am: b5c6036c29 -s ours
am skip reason: Merged-In I592dd5f1d6e13b020beadb11b9d913857a82e524 with SHA-1 58b493abf6 is already in history

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

Change-Id: I5cf84442d3e25629cc8c39fa2dd2b01cfebc8b56
2021-08-13 20:51:43 +00:00
Xin Li
b5c6036c29 Merge stage-aosp-sc-ts-dev before making it an upstream
Bug: 169893837
Merged-In: I592dd5f1d6e13b020beadb11b9d913857a82e524
Change-Id: I9db108c5bf31c17321534a55c1e6e78f46b96c45
2021-08-13 18:26:19 +00:00
Xin Li
de12da7a25 Merge "Merge ab/7633965" into stage-aosp-sc-ts-dev 2021-08-13 00:03:19 +00:00
The Android Open Source Project
7ef5d542cd Merge ab/7633965
Bug: 169893837
Merged-In: I592dd5f1d6e13b020beadb11b9d913857a82e524
Change-Id: I4e01d58ed61c595b704bae6c935d0da1714ee398
2021-08-12 22:28:22 +00:00
Benedict Wong
862d5607aa Merge "Prevent NPEs when registering/unregistering ConnDiags CBs." am: 5805d3cfd2 am: 5c5ff18089
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1761210

Change-Id: Ie5209e824f510d7866e74ce61e4b04e4dd8cd84e
2021-08-12 21:01:17 +00:00
Benedict Wong
5c5ff18089 Merge "Prevent NPEs when registering/unregistering ConnDiags CBs." am: 5805d3cfd2
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1761210

Change-Id: I0b39f045a4f0b51b278bf182ce36fbcf9c7fb8ca
2021-08-12 20:46:41 +00:00