Commit Graph

93619 Commits

Author SHA1 Message Date
TreeHugger Robot
3af0a7b5e5 Merge "Ignore DND when FLAG_BYPASS_INTERRUPTION_POLICY is set." into qt-r1-dev 2019-06-25 19:49:32 +00:00
Yin-Chia Yeh
0aa57fe073 Merge "Camera: block session init callback until ctor returns" into qt-dev
am: 0e1eecd080

Change-Id: I999510b0513b0b32a86af8e5460aa5688476e9f5
2019-06-25 09:45:42 -07:00
Yin-Chia Yeh
0e1eecd080 Merge "Camera: block session init callback until ctor returns" into qt-dev 2019-06-25 16:26:54 +00:00
Michael Wright
7f378787dc Ignore DND when FLAG_BYPASS_INTERRUPTION_POLICY is set.
When DND is on, it sets AppOps to return MODE_IGNORED for any non-touch
vibrations. Unfortunately, this means it blocks critical vibrations as
well, like emergency alerts. In order to avoid this, we need to respect
FLAG_BYPASS_INTERRUPTION_POLICY when set on the vibration attributes.

Bug: 132112663
Bug: 135686242
Test: Manual
Change-Id: I59465eed057b077a4c0548af162e0fec1c29afdc
2019-06-25 16:57:10 +01:00
Issei Suzuki
0ca1dbcb25 Merge "Added subtle animation for unlocking screen." into qt-r1-dev 2019-06-25 11:22:26 +00:00
Daniel Rosenberg
db5894d5a9 Merge "Make RescueParty call vold directly" into qt-dev
am: 2618371aa5

Change-Id: Id4b104e811a30722ea3c70add3750a9319245ff5
2019-06-24 15:00:57 -07:00
TreeHugger Robot
2618371aa5 Merge "Make RescueParty call vold directly" into qt-dev 2019-06-24 21:39:40 +00:00
Daniel Rosenberg
d078d8b15c Make RescueParty call vold directly
This changes RescueParty to call vold over binder directly for
Checkpointing related calls. It turns out that if the system is in a bad
enough state, the other method would not work, as some of the services
required would not be running.

Bug: 135558798
Test: setprop persist.sys.enable_rescue 1
      setprop debug.crash_system 1 or setprop debug.crash_sysui 1
      vdc checkpoint startCheckpoint 3
      stop
      start
      Device should go through the rescueparty flow, and reboot.
      Repeat without checkpoint. Device should prompt reboot.

Change-Id: I8b11d68075cc291e9557d524bc87b54d17b370e4
2019-06-24 13:23:27 -07:00
TreeHugger Robot
e6930c4aa1 Merge "Fixed event flushing to handle when mDirectServiceInterface is not ready yet." into qt-r1-dev 2019-06-24 18:42:45 +00:00
Yin-Chia Yeh
8b9b9f065c Camera: block session init callback until ctor returns
To fix race condition where session init callback is executed
before the ctor finished (and mSessionImpl is initialized)

Test: manuall testing GCA
Bug: 134218348
Change-Id: I6985b489a8cb459d9b1dce4d56a9c3e97ceb366c
2019-06-24 11:32:34 -07:00
Ioannis Ilkos
83270da58c Merge "Add anon RSS + swap metric" into qt-dev
am: 9af8d15783

Change-Id: Icdc2f66054c9f1450a731f051707b3824c487865
2019-06-24 08:11:08 -07:00
Issei Suzuki
5609ccbf95 Added subtle animation for unlocking screen.
Change-Id: Id691fec4f2e492682a53d6855090524f000ddc6c
Bug: 134965724
Bug: 134952761
Test: N/A
2019-06-24 14:25:04 +00:00
Ioannis Ilkos
9af8d15783 Merge "Add anon RSS + swap metric" into qt-dev 2019-06-24 08:46:40 +00:00
Lorenzo Colitti
f80234a9b0 Merge changes If7d41052,I66f263d7,Id45ae956,Iba752fed,I575a7e4f, ... into qt-r1-dev
* changes:
  Inline readNetworkStatsDetailInternal, make mUseBpfStats final
  Remove VPN info arrays from NetworkStats(Observer|Recorder)
  NetworkStatsFactory: Take VPNs into account for network/battery stats
  Remove duplicate line in clat_simple test file
  Remove unused lastStats parameter
  Revert "Revert "Take all VPN underlying networks into account when migrating traffic for""
2019-06-24 03:37:23 +00:00
Robert Carr
9e4b7a3f8d Merge "ViewRootImpl: Ensure layout when configuration changes." into qt-dev
am: 6397ab05f9

Change-Id: I17feac89670b328f88878ce57636cf4954e0c6f3
2019-06-21 17:30:57 -07:00
TreeHugger Robot
6397ab05f9 Merge "ViewRootImpl: Ensure layout when configuration changes." into qt-dev 2019-06-22 00:04:19 +00:00
Antoan Angelov
648eb2d3a7 Merge "Update docs for EXTRA_PROVISIONING_SKIP_EDUCATION_SCREENS." into qt-dev
am: ab34f61c3b

Change-Id: I4b0230f1429e5ca278fa6f5c15babddb1a71cda6
2019-06-21 11:15:06 -07:00
Antoan Angelov
ab34f61c3b Merge "Update docs for EXTRA_PROVISIONING_SKIP_EDUCATION_SCREENS." into qt-dev 2019-06-21 18:07:22 +00:00
Ioannis Ilkos
466ad6c3e0 Add anon RSS + swap metric
We are planning to use this metric to detect leaks.

This CL also decouples the actual memory sampling from AM. This means:
- Less time locking the pid list (we used to lock and then read proc)
- Less serialization / deserialization for the parcel
- Simpler to evolve (e.g. removed the HWM-specific method in AM)

Change-Id: I87a7243156dd8c88cfa85038e7e6cf4963e271e1
Test: manual, MemoryStatUtilTest, UidAtomTests
Bug: b/135418017
2019-06-21 11:10:19 +01:00
Benedict Wong
c9511e7525 NetworkStatsFactory: Take VPNs into account for network/battery stats
This change fixes detailed UID stats to ensure network and battery stats
both take VPNs into account. NetworkStatsFactory is being made aware of
VPNs enabled, and the full set of underlying networks present.

Since traffic can only be migrated over a NetworkStats delta, NSF
maintains a NetworkStats snapshot across all UIDs/ifaces/tags.

This snapshot gets updated whenever NSF records a new snapshot
(based on various hooks such as VPN updating its underlying networks,
network getting lost, etc.), or NetworkStatsService's
getDetailedUidStats() method being called.

This change widens the scope of the existing mPersistentSnapshot lock,
renaming it to mPersistentDataLock, and ensures that TUN migrations are
not done in parallel. Additionally, mVpnInfos is updated via
pointer-swapping, to reduce the scope of the mPersistentDataLock.

The safety of this change is predicated on:
1. NetworkStatsFactory lock not held, so services cannot deadlock through
the cyclical lock.

2. The broadening of the scope of the lock in NetworkStatsFactory has no
threading implications, as it is always the last (leaf node) lock held,
and therefore is impossible to have lock inversion.

Additionally, to ensure VPNs work with 464xlat, the VPN info passed to
the NetworkStatsFactory includes all underlying interfaces, instead of
only passing the first one.

This (partially) re-applies changes from:
aosp/972848: Add one more test for VPN usage stats.
aosp/972847: Addressing comments for http://ag/7700679.
aosp/885338: NetworkStatsService: Fix getDetailedUidStats to take VPNs
             into account.
Co-developed with: Varun Anand <vaanand@google.com>

Bug: 113122541
Bug: 120145746
Bug: 129264869
Bug: 134244752
Test: FrameworksNetTest passing
Test: Manual tests show data usage fixes maintained.
Merged-In: I6466ec1411fc5ed6954125d27d353b6cd1be719e
Change-Id: Id45ae956ad7165be346ecc010e17d260563ac1c0
(cherry picked from commit 9fbbdebc61)
2019-06-21 01:12:27 +00:00
Benedict Wong
edcd5ad555 Revert "Revert "Take all VPN underlying networks into account when migrating traffic for""
This reverts commit d8220c2050.

Reason for revert: Fix available for deadlocks.

Bug: 113122541
Bug: 134244752
Merged-In: Ib65214598837289bd39dbf040b56ab7835f893ba
Change-Id: Ia90bf2c72ef686e80800d113d03548e0efcadb66
(cherry picked from commit a84d9fa572)
2019-06-21 01:09:49 +00:00
Robert Snoeberger
06d2500944 Handle case that settings string is JSON
Settings.Secure string for clock face may be JSON so that it can contain
the timestamp that it was set for logging purposes.

Bug: 134687399
Test: Added SettingsWrapperTest
Change-Id: I50afba479c30029428819c6616ca754db681a2b4
2019-06-20 15:06:28 -04:00
arangelov
bb2a802a23 Update docs for EXTRA_PROVISIONING_SKIP_EDUCATION_SCREENS.
Bug: Fixes: 134391678
Test: manual
Change-Id: I993af4f4a741283294b1754dfc0adc7c6f6f849e
2019-06-20 16:31:10 +01:00
Junyu Lai
8ffb2b0106 Merge "Move the test of minimum supported keepalive slots to CTS" into qt-dev
am: 544e00d382

Change-Id: I5a8e52154f777064df66e943a3def4cbbc762856
2019-06-19 22:55:07 -07:00
Junyu Lai
1459e84fd6 Merge "Correct value of supported keepalive count for cellular" into qt-dev
am: fbe58171d6

Change-Id: Ic36c3be787c6c12647b1fd1460e3c2183ea605ec
2019-06-19 22:54:45 -07:00
Amith Yamasani
32fbd5c62f Merge "Expose BIND_NOT_PERCEPTIBLE service flag" into qt-dev
am: 41d0b1abc8

Change-Id: Id99a04acfde6efd779f7c6cb5059f11a380aa1a4
2019-06-19 22:53:21 -07:00
Junyu Lai
544e00d382 Merge "Move the test of minimum supported keepalive slots to CTS" into qt-dev 2019-06-20 05:35:07 +00:00
Junyu Lai
fbe58171d6 Merge "Correct value of supported keepalive count for cellular" into qt-dev 2019-06-20 05:35:07 +00:00
TreeHugger Robot
41d0b1abc8 Merge "Expose BIND_NOT_PERCEPTIBLE service flag" into qt-dev 2019-06-20 05:34:34 +00:00
Junyu Lai
a248130fc9 Correct value of supported keepalive count for cellular
Cellular only supports 1 keepalive connection so correct the default
supported value to 1.

Bug: 134037217
Bug: 134352656
Test: - atest FrameworksNetTests
      - atest android.net.cts.ConnectivityManagerTest \
        #testSocketKeepaliveLimitTelephony

Merged-In: Ia3761f2e78d54866bb2e156d58004396bbc8adc3
Change-Id: If833b813ba00eeff913160598f1ea9c74e6e35d8
(cherry picked from commit 680abbb591)
2019-06-20 04:02:38 +00:00
Makoto Onuki
5b80149cce Merge "Optionally trigger CG in onTrimMemory()" into qt-dev
am: 71acb72cbd

Change-Id: I02c2450dc66c3741c451c34d54f90f0214114988
2019-06-19 19:41:10 -07:00
Junyu Lai
70c06b5e52 Move the test of minimum supported keepalive slots to CTS
This change also enables log when keepalive is started.

Bug: 134352656
Test: 1. atest android.net.cts.ConnectivityManagerTest#testSocketKeepaliveLimitTelephony
      2. atest FrameworksNetTests
Merged-In: I408750fa0bceb0c1c26afb5fead4e44fb824fbc1
Change-Id: Ib9b06d3458782a648a2f5b8fd5a9ca1d34bd11f9
(cherry picked from commit aed835f086)
2019-06-20 02:26:58 +00:00
Makoto Onuki
71acb72cbd Merge "Optionally trigger CG in onTrimMemory()" into qt-dev 2019-06-19 23:24:04 +00:00
Amith Yamasani
5016a7891a Expose BIND_NOT_PERCEPTIBLE service flag
Using this flag when binding to a service will
allow the bound process to be held at a low
oom_adj of 250, so that it can be expunged to
reclaim memory if a more user-visible app needs
it.

Use for bindings such as job services and other
connections that the caller can easily recover
from and restart if necessary.

Adjust the lmk thresholds to use this oom_adj
as one of the levels, so they're killed before
perceptible apps (such as foreground services).

Bug: 135219821
Test: CtsAppTestCases
      Manually check notification listener oom_adj
      and dumpsys activity services output

Change-Id: I9f6d0891d842e4d12f7995b9b1a8f57b0903a16d
2019-06-19 14:40:57 -07:00
John Reck
5866a0c6ab Revert SurfaceView back to Q's version
Revert API behavior changes to SurfaceView, snapping
back to Q's version.

Bug: 133378280
Test: none
Change-Id: I3a47f9bfdfab2d16707f952a9af672551736e681
2019-06-19 11:39:20 -07:00
Makoto Onuki
0a9ee1af2c Optionally trigger CG in onTrimMemory()
Set a trim-level threshold to debug.am.run_gc_trim_level to activate it.

Bug: 135148702
Test: Manual test with "setprop debug.am.run_gc_trim_level 0", run a lot of
heavy apps and take pictures, and check logcat for the "force_gc" event log.
Test: Manual test with "setprop debug.am.run_mallopt_trim_level 0", run a lot of
heavy apps and take pictures, and check logcat for a debug log.

Change-Id: I73b4dc7374e85e9a22c98ab17da53aa6cb25a188
2019-06-19 10:01:55 -07:00
Adam He
d93ed17d5e Fixed event flushing to handle when mDirectServiceInterface is not ready
yet.

Fixes: 135474027
Test: atest CtsContentCaptureServiceTestCases
Change-Id: I5bc12cd5f48138650c82b052c785a505fc8f4773
2019-06-18 16:51:57 -07:00
Robert Carr
437c0e4c15 ViewRootImpl: Ensure layout when configuration changes.
When the configuration changes between landscape and reverse
landscape, the app will not receive onConfigurationChanged as
orientation is not part of the public portion of the configuration.
However, when the ViewRootImpl receives such a configuration back from
relayout, it will force a layout of the client views
(see updatedConfiguration in performTraversals), this is because
Configuration#equals compares the non public part of the configuration
as well. This CL changes MSG_REPORT_RESIZED to handle the configuration
changing the same way performTraversals does, so that the app consistently
receives a configuration change.

Bug: 134643273
Test: Manual
Change-Id: If016bcd9a5b8d2a7efc5e1ab3c82a88a608caf8b
2019-06-18 16:12:29 -07:00
Will Brockman
e320fca53a Merge "Log usage of addPerson() and setStyle() in notifications." into qt-dev
am: 029190c1bc

Change-Id: If5b6463d6c44df9660088e14b6357321c85c095d
2019-06-18 10:48:27 -07:00
TreeHugger Robot
029190c1bc Merge "Log usage of addPerson() and setStyle() in notifications." into qt-dev 2019-06-18 17:04:01 +00:00
lumark
c0ecccca16 Merge "Make InputMethodSystemProperty#MULTI_CLIENT_IME_ENABLED testable." into qt-dev
am: b7abebde5b

Change-Id: I7459ec72287ffa36bcc11e9cce87d9a4258705d5
2019-06-18 05:32:28 -07:00
TreeHugger Robot
b7abebde5b Merge "Make InputMethodSystemProperty#MULTI_CLIENT_IME_ENABLED testable." into qt-dev 2019-06-18 12:27:15 +00:00
Mihai Popa
104a254b1a Merge "[Magnifier-87] Fix deadlock causing ANR" into qt-dev
am: 9550c185f9

Change-Id: I0bd285dde76e8e232c119f66c5904bf1b461fb5b
2019-06-18 02:22:45 -07:00
Mihai Popa
9550c185f9 Merge "[Magnifier-87] Fix deadlock causing ANR" into qt-dev 2019-06-18 09:10:17 +00:00
Chalard Jean
5fa9d376ea Merge "Remove the <= P restriction for WIFI_P2P" into qt-dev
am: 2ae76cdbe8

Change-Id: Ib1cb85a5864345d1367a92b2d0e3545fd8c4872e
2019-06-17 23:35:14 -07:00
TreeHugger Robot
2ae76cdbe8 Merge "Remove the <= P restriction for WIFI_P2P" into qt-dev 2019-06-18 06:16:30 +00:00
Chalard Jean
449b9c378c Remove the <= P restriction for WIFI_P2P
This is still sent in an intent.

Bug: 131764329
Fixes: 131764329
Merged-In: I56c86b0c1912064d5a642991df32d2cefb6a8d5b
Change-Id: I64b9d632be97dc51e6085162371bb8c19f410258
(cherry picked from commit e546cb0bd16b7359feeb3c46ba52e64cf91ae4d3)
2019-06-18 06:15:58 +00:00
Julia Reynolds
fb6dd2a8c0 Merge "Use connected boolean as NLS does vs IBinder" into qt-dev
am: 23dcdcefde

Change-Id: I51f2fec6b85c4d9e3e6a5b39cd0a2e09955ec802
2019-06-17 15:16:05 -07:00
Julia Reynolds
b1f5aafc91 Use connected boolean as NLS does vs IBinder
To determine if the CPS can get/send messages. Apparently
the IBinder can be cached in ActivityManager and onBind() is not
always called when a service is connected the second time.

Test: manual; ensure a service recieves an onsubscribe for an
active rule post requestUnbind/requestRebind
Fixes: 62584038

Change-Id: Iffe37242509f3bf26e609e6b423f3928c00156ad
(cherry picked from commit 265d093cd9)
2019-06-17 17:51:18 +00:00
Mihai Popa
e42215ea70 [Magnifier-87] Fix deadlock causing ANR
Before this CL, the magnifier could deadlock when the following
happened:
1. the renderer is asked to draw (and a frame callback is provided)
2. a #dismiss() happens on the UI thread. This acquires mDestroyLock
(previously line 309)
3. InternalPopupWindow#destroy() is called, and this calls
mRenderer.destroy(). This attempts to destroy the renderer on the UI
thread, however the UI thread will wait until the pending frame callback
corresponding to step 1 is executed on the render thread.
4. The frame callback starts executing on the render thread, and tries
to acquire mDestroyLock (previously line 1093). However, this is held by
the UI thread, so a deadlock happens.

This CL completely removes mDestroyLock, relying on the existing
synchronization between the UI and render threads described in step 3.

Bug: 134584742
Test: manual testing
Change-Id: Ia4c75b5b997e0ed94d5a3814dd4507a8fffa124d
2019-06-17 11:59:20 +00:00