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
Once the application called Context.getCrateDir(), the crates root
directory is also created. The application can mkdir directory under the
crates root. Each child directory in crates root is one crate.
Each crate information is descibed by CrateInfo. CrateInfo contains
the following information.
* Label:
It is used to display text to the users.
Default is the folder name.
* Expiration:
When the system needs more space. The system will clean the files
in the crates according to the expired or not.
Default is 0.
Test: atest \
CtsOsTestCases:android.os.storage.cts.CrateInfoTest \
CtsOsTestCases:android.os.storage.cts.StorageCrateTest \
CtsOsTestCases:android.os.storage.cts.StorageStatsManagerTest
Bug: 141660526
Change-Id: Icdc8123c481ef7c5b4fd68ffcfd334ffbfc9d655
To help with monitoring Mainline releases, log the reason
for a watchdog-initiated rollback. This may be due to
native crashes, app crashes, ANRs or explicit health check
failures.
Add a mapping from PackageWatchdog failure reason to the
new metrics.
Bug: 146415463
Test: atest PackageWatchdogTest
Test: atest StatsdHostTestCases
Change-Id: Ia3e73d955508297004591eac762555665c557b8a
Merged-In: Ia3e73d955508297004591eac762555665c557b8a
(cherry picked from commit dd1dabaef7)
An upcoming change will move MediaStore to be within the recently
created MediaProvider APEX. This means that MediaStore will need to
be fully built against @SystemApi, and so this CL adjusts APIs to
support a clean transition:
-- Listing of "recent" storage volumes and scan paths for "internal"
storage is now handled by StorageManager directly, so that partners
retain control over what is deemed recent.
-- StorageVolume now returns the MediaStore volume name and the
filesystem directory where its contents are presented to apps.
-- Conversion of legacy thumbnail "kind" values to dimensions now
happens directly inside MediaStore.
-- PendingParams and PendingSession are completely removed.
-- Contributed media APIs are completely removed.
-- Media for demo users is now surfaced as a unique StorageVolume.
-- Migrate most MediaStore APIs to accept ContentResolver, which
supports easy usage of ContentResolver.wrap().
Bug: 144247087, 137890034
Test: atest --test-mapping packages/providers/MediaProvider
Exempt-From-Owner-Approval: in-place refactoring
Change-Id: I445528b2779bb37b9f2558e67a3cfc9f60412092
These information are needed to isolate apps data directory.
Only normal app zygote forks require these info, as
- system process - Does not need data isolation
- app zygote - It's for generating isolated process, so don't need
access apps data.
webview zygote - Similar to isolated process, don't need to access
apps data.
Bug: 143937733
Test: Able to see the package name, volume uuid, and inode nuber
for each visible package in zygote
Change-Id: I281e113d2a13d103c8967b37a06b639c5a5a8ff8
Expose @hide APIs referenced by ParceledListSlice/
BaseParceledListSlice as public APIs.
ParceledListSlice will not be made a stable API
in Android R. Thus, allow it to be copied into
modules that need it by ensuring it does not use
any @hide APIs.
Bug: 145317012
Test: compiles
Change-Id: Ife85b66005ba22b03c09bf9446661368dea31945