When an OTA is downloaded, the RecoverySystem can be triggered to store
the user's lock screen knowledge factor in a secure way using the
IRebootEscrow HAL. This will allow the credential encrypted (CE)
storage, keymaster credentials, and possibly others to be unlocked when
the device reboots after an OTA.
Bug: 63928581
Test: atest FrameworksServicesTests:RebootEscrowDataTest \
FrameworksServicesTests:LockSettingsServiceTests \
FrameworksServicesTests:RecoverySystemServiceTest \
FrameworksServicesTests:RebootEscrowManagerTests
Test: use fake OTA console app to apply update
Change-Id: I59df6942b27ea2bdd11b757922f5169085a325f0
Replaces the UserManager.getUserType API with isUserOfType, where the
suspected type is passed in as a parameter. Also makes this API require
MANAGE_USERS.
Test: atest UserManagerServiceUserInfoTest
Test: atest UserManagerTest
Bug: 142482943
Change-Id: Icca1d5d9a36bfc1422c3f37456135ce69c3f3b38
Added a class for attributes of vibrations, to gradually replace usage
of AudioAttributes in haptics context. Refactored VibrationService and
related classes to use VibrationAttributes, converting AudioAttributes
to VibrationAttributes and back as necessary
Test: manual. Since it's a refacroring, everything should work as before
Bug: 136810264
Change-Id: I82c04bc6f6fb723ee390e3b86a4a371564ab28d4
When kernel is configured with CONFIG_VMAP_STACK=y kernel stacks are mapped
into process space and therefore already accounted as part of the value
returned by ReadVmallocInfo and reported under MEMINFO_VM_ALLOC_USED
category. Introduce isVmapStack function to check if kernel is configured
with that option and if so do not exclude kernel stack size in the
calculation of memory used by kernel.
Bug: 146088882
Test: dumpsys meminfo with CONFIG_VMAP_STACK enabled and disabled
Change-Id: I9230bbf0ab05524cf52ded35171fd9ec3da16fa0
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Use a more targeted API to create app-specific directories; allows us to
set the UID of app-specific directories correctly on devices that don't
have sdcardfs.
Bug: 146419093
Test: atest FuseDaemonHostTest
Test: boot device without FUSE, verify app dirs are created.
Change-Id: I40d9f95a0bf2e53cc6f80d46d46ef71fb39315be
Fix race conditions that processes could get killed during meminfo
dump.
Also fixed various other issues with meminfo dump
Bug: 144503238
Test: Insert the below code before retrieving process meminfo,
and then set a pid, run dumpsys meminfo, check the output.
if (SystemProperties.getBoolean("sys.fake-kill." + pid, false)) {
Process.killProcess(pid);
Thread.sleep(1000);
}
Change-Id: I96436800ce218309cc5fd8a21c35ad29584faf6f
Provide means for system_server to query ION memory usage. The new API
allows to get total size of ION heaps, pools and part of ION heaps that
is mapped into user space.
Bug: 138148041
Test: dumpsys meminfo
Change-Id: I6d76d534bbab5ee1646e8e3e3fe5210dcf76bc23
Merged-In: I6d76d534bbab5ee1646e8e3e3fe5210dcf76bc23
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
The implementation of IIncrementalManager.aidl. TODO to refactor this.
Test: atest service.incremental_test
Change-Id: Ib8c8a9c0e7f0289b4bcd8961fa39746ed12b4310
If device doesn't support userspace reboot then call to
PowerManager.reboot("userspace") will throw an
UnsupportedOperationException.
For the case of upgrading devices, Treble enforces that previous vendor
image should work with the new system image. Since userspace reboot
requires services to be stopped and restarted cleanly, which upgrading
devices might not be able to comply with, we need to have an API to
distinguish between devices that support userspace reboot and the ones
that do not.
Test: atest PowerManagerTest
Test: atest CtsUserspaceRebootHostSideTestCases
Bug: 138605273
Bug: 135984674
Change-Id: I8303f43ab29499eb2995f0256854c787055d9560
Provide means for system_server to query ION memory usage. The new API
allows to get total size of ION heaps, pools and part of ION heaps that
is mapped into user space.
Bug: 138148041
Test: dumpsys meminfo
Change-Id: I6d76d534bbab5ee1646e8e3e3fe5210dcf76bc23
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Such checks uses old libvintf to parse new VINTF metadata, which is not
supported. The check is now moved to OTA package build time, so there is
no need to check it on the device.
Test: builds
Bug: 139300422
Change-Id: Ifaec06b5298f698958e5727316bf661d1960d0aa
With new KReclaimable stat available in /proc/meminfo include it in
getMemInfo results so that it can be accounted in dumpsys meminfo reports.
Bug: 138148041
Test: dumpsys meminfo
Change-Id: Id475fcc0a63c6fc12ea64e08cec5cd24c83848a5
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Existing annotations in libcore/ and frameworks/ will deleted after the migration. This also means that any java library that compiles @UnsupportedAppUsage requires a direct dependency on "unsupportedappusage" java_library.
Bug: 145132366
Test: m && diff unsupportedappusage_index.csv
Change-Id: I534e3fd1305e2f4af076986770033478448a665c
This is the first step, migrating java parts.
CleanSpec.mk added as a workaround for b/146502407
Test: builds and flashes
Bug: b/136132412
Change-Id: Id0a26aa011b555ea457b5aafe7f5789c36d25bcc
Due to permission constraints, use a new temp dir for holding temporary
Incremental files/dirs.
Test: manual
Change-Id: I46b9d608225ed7ae3ccc552c6c43157d6505a66c
As part of the work to deprecate Corporate-Owned Managed Profile (COMP)
mode, remove the restrictions that are set by default when a Device
Owner is set on the device.
The Device Owner used to be able to add/remove the restrictions for
adding/removing a managed profile.
In the new mode, this restriction will be set by default, by the system,
and not removeable by the device owner.
Test: atest FrameworksServicesTests:DevicePolicyManagerTest
Test: atest CtsDevicePolicyManagerTestCases:com.android.cts.devicepolicy.DeviceOwnerPlusProfileOwnerTest
Bug: 143517714
Bug: 138709492
Change-Id: Ice5f8b678327b2c901623cc8f4dd6d60271b361b